Tools__NavigationState.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 14 Jun 2018 22:19:39 +0100
branchjv
changeset 18227 d25a407ba86d
parent 17134 c4cce8b7a95d
child 19611 a4b9d283ca40
permissions -rw-r--r--
Mini testrunner: show "green" if there's at least one pass and rest is pass or skip This is more meaningfull result then showing "gray" if there's at least one skip.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2000 by eXept Software AG
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"{ NameSpace: Tools }"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
Object subclass:#NavigationState
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	instanceVariableNames:'browserLabel codeModifiedHolder categoryList classList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
		packageFilter nameSpaceFilter hidePrivateClasses canvasType
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
		notMetaToggle metaToggle metaToggleLabel organizerMode codeAspect
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
		codeHolder classDocumentationHolder canvas selectorListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
		protocolListGenerator classListPerNameSpaceGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
		classListGenerator categoryListGenerator nameSpaceListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
		projectListGenerator classHierarchyTopClass meta selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
		selectedProtocols selectedClasses selectedCategories
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
		selectedProjects selectedNamespaces selectedLintRules
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
		variableFilter filterClassVars sortBy noAllItem autoSearchPattern
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    27
		autoSearchIgnoreCase autoSearchIsMatch autoSearchAction
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    28
		realModifiedStateHolder methodInfo versionDiffApplication
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    29
		selectorListGeneratorArray selectedMethodsArray infoLabelHolder
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    30
		packageLabelHolder cursorLineLabelHolder cursorColLabelHolder
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    31
		modeLabelHolder sortVariablesBy editModeHolder scrollableCodeView
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    32
		specialEditors selectedEditorNoteBookTabIndexHolder
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    33
		editorNoteBookListHolder editorNoteBookCanvasHolder codeView
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    34
		stringSearchToolView noteBookView inheritanceView
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    35
		documentationView languageHolder messageSpecHolder messageHolder
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    36
		progressHolder tabContentView messagePaneView
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    37
		codePaneAndPluginView codePaneAndPluginViewRelativeCorners
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    38
		pluginVisibleHolder bookmarkHolder worker
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    39
		packageInfoBackgroundColorHolder packageInfoButton
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    40
		showMethodTemplate lastMethodShownInCodeView showingParseError
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    41
		navigationHistory lintRuleListGenerator profilerStatistics
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    42
		inlineMessageApplication'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
	classVariableNames:'CodeAspectTranslations'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
	poolDictionaries:''
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
	category:'Interface-Browsers-New'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
!NavigationState class methodsFor:'documentation'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
copyright
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
 COPYRIGHT (c) 2000 by eXept Software AG
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
              All Rights Reserved
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
 This software is furnished under a license and may be used
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
 only in accordance with the terms of that license and with the
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
 inclusion of the above copyright notice.   This software may not
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
 be provided or otherwise made available to, or used by, any
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
 other person.  No title to or ownership of the software is
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
 hereby transferred.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
!NavigationState class methodsFor:'initialization'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
initialize
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    "Invoked at system start or when the class is dynamically loaded."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    "/ please change as required (and remove this comment)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    CodeAspectTranslations := Dictionary new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
    CodeAspectTranslations at: #newApplication put: SyntaxHighlighter codeAspectClassDefinition.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
    CodeAspectTranslations at: #newError put: SyntaxHighlighter codeAspectClassDefinition.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
    "/ Add more...
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
    "Modified: / 23-10-2012 / 11:27:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
!NavigationState methodsFor:'accessing'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
autoSearchAction
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
    ^ autoSearchAction
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    87
autoSearchAction:aBlock
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    88
    "define an autosearch action (for semantic searches)"
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    89
    
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    90
    autoSearchAction := aBlock.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
autoSearchIgnoreCase
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
    94
    "return true if the autoSearch is case-insensitive"
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    ^ autoSearchIgnoreCase
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
autoSearchIgnoreCase:aBoolean
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   100
    "define the autoSearches case-insensitivenes"
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
    autoSearchIgnoreCase := aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   105
autoSearchIsMatch
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   106
    "return true if the autoSearch is a match search"
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   107
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   108
    ^ autoSearchIsMatch
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   109
!
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   110
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   111
autoSearchIsMatch:aBoolean
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   112
    "define the automatic search pattern matching behavior"
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   113
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   114
    autoSearchIsMatch := aBoolean.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   115
!
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   116
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
autoSearchPattern
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   118
    "return the automatic search pattern.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   119
     The codeView will search for this automatically, 
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   120
     whenever the navigation is changing the shown method."
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
    ^ autoSearchPattern
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   125
autoSearchPattern:aStringOrPattern
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   126
    "define the automatic search pattern.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   127
     The codeView will search for this automatically, 
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   128
     whenever the navigation is changing the shown method."
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   129
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   130
    autoSearchPattern := aStringOrPattern.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   131
!
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
16469
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   133
autoSearchPattern:aStringOrPattern ignoreCase:ignoreCaseBoolean match:isMatchBoolean 
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   134
    "define the automatic search pattern.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   135
     The codeView will search for this automatically, 
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   136
     whenever the navigation is changing the shown method."
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   137
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   138
    autoSearchPattern := aStringOrPattern.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   139
    autoSearchIsMatch := isMatchBoolean.
cb6a0937d2ec #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15820
diff changeset
   140
    autoSearchIgnoreCase := ignoreCaseBoolean.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
browserLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
    "return the assigned state-label (to be shown in the tab)."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
    ^ browserLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
browserLabel:aString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
    "set the assigned state-label (to be shown in the tab)."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
    browserLabel := aString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
canvas
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    ^ canvas
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
canvas:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
    canvas := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
    canvasType isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
        canvasType := something spec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
canvasType
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    "return the type of canvas"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
    ^ canvasType
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
canvasType:aSpecSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    "set the type of canvas"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
    canvasType notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
        canvasType ~~ aSpecSymbol ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
            self halt:'cannot be changed, once set'.
16561
53761985fb49 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 16469
diff changeset
   178
            ^ self.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    canvasType := aSpecSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
codeAspect
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
    "return the codeAspect; a symbol describing what is shown in the codeView"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
    ^ codeAspect
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
    "Created: / 11.2.2000 / 12:43:29 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
codeAspect:aSymbolOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
    "set the codeAspect; a symbol describing what is shown in the codeView"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    codeAspect := aSymbolOrNil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
    (codeView notNil and:[codeView isCodeView2]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
        | xlatedCodeAspect |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
16896
9336d232a127 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16568
diff changeset
   199
        xlatedCodeAspect := CodeAspectTranslations at: aSymbolOrNil ifAbsent:[aSymbolOrNil].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
        codeView codeAspect: xlatedCodeAspect
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "Created: / 11-02-2000 / 12:43:45 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
    "Modified: / 22-10-2012 / 17:05:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
codePaneAndPluginView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
    ^ codePaneAndPluginView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
codePaneAndPluginView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
    codePaneAndPluginView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
codePaneAndPluginViewRelativeCorners
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
    codePaneAndPluginViewRelativeCorners ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
        codePaneAndPluginViewRelativeCorners := #(0.76 1.0)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
    ^ codePaneAndPluginViewRelativeCorners
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
    "Modified: / 04-10-2010 / 08:20:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
codePaneAndPluginViewRelativeCorners: anArray
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
    codePaneAndPluginViewRelativeCorners := anArray.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    "Modified: / 04-10-2010 / 08:14:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
editorNoteBookCanvasHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
    editorNoteBookCanvasHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   233
        editorNoteBookCanvasHolder := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
    ^ editorNoteBookCanvasHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
editorNoteBookListHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
    editorNoteBookListHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   240
        editorNoteBookListHolder := ValueHolder with:#().
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
    ^ editorNoteBookListHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
environment
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
    ^ Smalltalk
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
lastMethodShownInCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    ^ lastMethodShownInCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
lastMethodShownInCodeView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
    lastMethodShownInCodeView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
messagePaneView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    ^ messagePaneView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
messagePaneView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
    messagePaneView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
modified
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
    "check for modified code by asking the editTextView;
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
     this one returns true if ever modified - even if
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
     the modifications where undone in the editor
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
     (i.e. not really modified).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
     Use #reallyModified if the contents should be compared
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
     against the original contents"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
    |v|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
    self realModifiedState == true ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
    self anySpecialEditorModified ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
    ^ (v := self codeView) notNil and:[v modified]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
modified:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
    |codeView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
    (codeView := self codeView) notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
        codeView modified:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
        specialEditors do:[:anEditor | 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
            anEditor application modified:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
        ].    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
noteBookView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
    ^ noteBookView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
noteBookView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
    noteBookView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
realModifiedState
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
    ^ self realModifiedStateHolder value
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
realModifiedState:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    self realModifiedStateHolder value:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
realModifiedStateHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    realModifiedStateHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
        realModifiedStateHolder := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
    ^ realModifiedStateHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
selectedEditorNoteBookTabIndexHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
    selectedEditorNoteBookTabIndexHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   319
        selectedEditorNoteBookTabIndexHolder := ValueHolder with:1.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
    ^ selectedEditorNoteBookTabIndexHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
showMethodTemplate
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    ^ showMethodTemplate ? true
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
    "Created: / 12-02-2012 / 08:49:32 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
showMethodTemplate: aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    showMethodTemplate := aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
    "Created: / 12-02-2012 / 08:49:45 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
showingParseError
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
    ^ showingParseError
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
showingParseError:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
    showingParseError := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
stringSearchToolView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
    ^ stringSearchToolView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
stringSearchToolView: aStringSearchTool
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
    stringSearchToolView := aStringSearchTool
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
tabContentView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
    ^ tabContentView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
tabContentView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
    tabContentView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
worker
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
    ^ worker
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
worker:aProcess
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
    worker := aProcess.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
!NavigationState methodsFor:'accessing-selection'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
theSingleSelectedClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
    "if only one class is selected, return it.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
     Otherwise, return nil"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
    |classes|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
    classes := self selectedClasses value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
    classes size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
        ^ classes first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
theSingleSelectedMethod
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
    "if only one method is selected, return it.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
     Otherwise, return nil"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
    |methods|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
    methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
    methods size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
        ^ methods first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
!NavigationState methodsFor:'accessing-subApps'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
applicationOfComponent:aComponentName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
    ^ self applicationOfComponent:aComponentName or:nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
applicationOfComponent:aComponentName or:anotherComponentName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
    |builder view|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    canvas isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
    builder := canvas builder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
    view := builder findVisibleComponentAt:aComponentName.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
    (view isNil and:[anotherComponentName notNil]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
        view := builder findVisibleComponentAt:anotherComponentName.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
    view notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
        ^ view application
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
classCategoryListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
    ^ self applicationOfComponent:#ClassCategoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
classHierarchyListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
    ^ self applicationOfComponent:#ClassHierarchyList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
classListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
    ^ self applicationOfComponent:#ClassList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
14160
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   436
inlineMessageApplication
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   437
    inlineMessageApplication isNil ifTrue:[
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   438
        inlineMessageApplication := Tools::InlineMessageDialog new
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   439
    ].
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   440
    ^ inlineMessageApplication
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   441
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   442
    "Created: / 25-03-2014 / 17:59:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   443
!
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   444
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
metaToggleComponent
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
    ^ canvas builder findComponentAt:#ClassToggle.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
methodCategoryListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
    ^ self applicationOfComponent:#MethodCategoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
methodListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
    ^ self applicationOfComponent:#MethodList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
nameSpaceListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    ^ self applicationOfComponent:#NamespaceList or:#PseudoNamespaceList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
projectListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
    ^ self applicationOfComponent:#ProjectList or:#PseudoProjectList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
variableListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    ^ self applicationOfComponent:#VariableList 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
versionDiffApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
    ^ versionDiffApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
versionDiffApplication:anApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
    versionDiffApplication := anApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
!NavigationState methodsFor:'accessing-subViews'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
anySpecialEditorModified
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
        ^ specialEditors contains:[:anEditor | anEditor application isModified].    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
    ^ false
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
codeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    codeView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
        codeView := self scrollableCodeView scrolledView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
    ^ codeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
doSaveInSpecialEditors
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
        specialEditors do:[:anEditor | 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
            anEditor application isModified ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
                anEditor application save.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
                ^ self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
        ].    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
documentationView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
    |textView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
    documentationView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
        textView := CodeView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
        documentationView := HVScrollableView forView:textView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
    ^ documentationView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
getCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
    ^ codeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
inheritanceView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
    inheritanceView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
        |classTreeView scrolledView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
        classTreeView := ClassTreeGraphView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
        scrolledView := HVScrollableView forView:classTreeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
        classTreeView middleButtonMenu:nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
        inheritanceView := scrolledView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
    ^ inheritanceView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
methodCategoryList: aView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    | builder |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
    builder := canvas builder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
    builder namedComponents at: #MethodCategoryList put: aView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
    "Created: / 08-08-2011 / 09:18:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
methodList: aView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
    | builder |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
    builder := canvas builder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
    builder namedComponents at: #MethodList put: aView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
    "Created: / 08-08-2011 / 15:32:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
packageInfoButton
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
    ^ packageInfoButton
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
packageInfoButton:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
    packageInfoButton := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   559
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
scrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
    scrollableCodeView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
        scrollableCodeView := self setUpScrollableCodeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
    ^ scrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
setUpScrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
    |v newScrollableCodeView newCodeView |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
    (UserPreferences current useCodeView2In: #Browser) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
        newCodeView := newScrollableCodeView := CodeView2 new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
        newCodeView mode: #method.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
        newCodeView methodHolder: self theSingleSelectedMethodHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
        newCodeView classHolder: self theSingleSelectedClassHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
        newScrollableCodeView := HVScrollableView for:CodeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
        newCodeView := newScrollableCodeView scrolledView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
        newScrollableCodeView horizontalMini:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
    newScrollableCodeView name:'CodeView'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    newCodeView modifiedChannel:self codeModifiedHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
    newCodeView model:self codeHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
    newCodeView canTab:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
    UserPreferences current useCodeView2InTools ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
        newCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
            classHolder:self theSingleSelectedClassFromMethodHolder;
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
            languageHolder:self languageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
    (UserPreferences current showAcceptCancelBarInBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
        and:[newCodeView isCodeView2 not or:[UserPreferences current codeView2ShowAcceptCancel not]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
        ViewWithAcceptAndCancelBar notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
            v := ViewWithAcceptAndCancelBar new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
            v slaveView:newScrollableCodeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
            v reallyModifiedHolder:self realModifiedStateHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
            v cancelAction:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
                [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
                    "/ codeView setClipboardText:(codeView contents).   "/ for undo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
                    newCodeView device rememberInCopyBufferHistory:(newCodeView contents).  "/ for undo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
                    newCodeView application
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
                        delayedUpdateCodeWithAutoSearch:false checkModified:false.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
                    newCodeView requestFocus.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
                ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
            v compareAction:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
                [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
                    newCodeView application doCompareIn:self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
                    newCodeView requestFocus
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
                ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
            newScrollableCodeView := v.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
   ^newScrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
    "Modified: / 05-07-2011 / 10:34:33 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
    "Modified: / 05-08-2011 / 09:44:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
specialEditorCanvasClassForResourceType:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
    resourceTypeSymbol == #fileImage ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
        ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
    ^ SystemBrowser resourceEditorClassFor:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
specialEditorCanvasForResourceType:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
    |appClass app editorView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
    specialEditors isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
        specialEditors := Dictionary new.    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   632
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   633
    editorView := specialEditors at:resourceTypeSymbol ifAbsent:nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
    editorView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
        appClass := self specialEditorCanvasClassForResourceType:resourceTypeSymbol.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
        appClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
            app := appClass new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
            app masterApplication:self canvas application.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
            app isEmbeddedInBrowser:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
            app infoLabelHolder:(self canvas application infoLabelHolder).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   641
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   642
            editorView := ApplicationSubView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
            editorView buildMenu:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
            editorView client:app.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
            app builder window:editorView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
            specialEditors at:resourceTypeSymbol put:editorView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
    ^ editorView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
!NavigationState methodsFor:'aspects'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
bookmarkHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
    "return/create the 'bookmarkHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
    bookmarkHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
        bookmarkHolder := ValueHolder with: self theSingleSelectedBookmarkFromMethodOrClass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
        self selectedMethods onChangeSend: #updateBookmarkHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
        self selectedClasses onChangeSend: #updateBookmarkHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
    ^ bookmarkHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   665
    "Modified: / 03-06-2011 / 12:00:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
categoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    categoryList isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   670
        categoryList := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   671
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   672
    ^ categoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   674
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
    "Created: / 25.2.2000 / 01:57:45 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   676
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   677
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   678
categoryListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
    categoryListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   680
        categoryListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   681
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   682
    ^ categoryListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
    "Created: / 25.2.2000 / 01:34:30 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
classDocumentationHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
    classDocumentationHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   690
        classDocumentationHolder := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
    ^ classDocumentationHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   695
classHierarchyTopClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
    classHierarchyTopClass isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   697
        classHierarchyTopClass := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   698
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   699
    ^ classHierarchyTopClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   700
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
classList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
    classList isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   704
        classList := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   705
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   706
    ^ classList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
    "Created: / 25.2.2000 / 01:57:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
classListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
    classListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   713
        classListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
    ^ classListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
classListPerNameSpaceGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
    classListPerNameSpaceGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   720
        classListPerNameSpaceGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   722
    ^ classListPerNameSpaceGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   723
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   724
    "Created: / 18.8.2000 / 14:15:34 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   725
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   726
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   727
codeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   728
    codeHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   729
        codeHolder := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   730
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
    ^ codeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   732
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   733
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
codeModifiedHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
    codeModifiedHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   736
        codeModifiedHolder := ValueHolder with:false.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
    ^ codeModifiedHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   740
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   741
cursorColLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
    cursorColLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
"/        self codeView isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   744
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
        cursorColLabelHolder := BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
                                    with:[:v | v printString]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   747
                                    argument:self codeView cursorColHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   748
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   749
    ^ cursorColLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   750
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   751
15820
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
   752
cursorLineAndColumnLabelHolder
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
   753
    ^ self codeView cursorLineAndColumnLabelHolder.
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
   754
!
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
   755
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   756
cursorLineLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   757
    cursorLineLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
"/        self codeView isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   759
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   760
        cursorLineLabelHolder := BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   761
                                    with:[:v | v printString]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   762
                                    argument:self codeView cursorLineHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   763
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
    ^ cursorLineLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   766
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
editModeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
    editModeHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
        editModeHolder := self codeView editModeHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   770
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   771
    ^ editModeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   772
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   773
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   774
filterClassVars
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   775
    filterClassVars isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   776
        filterClassVars := ValueHolder with:false.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   777
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   778
    ^ filterClassVars
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   779
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
hidePrivateClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   784
    hidePrivateClasses isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   785
        hidePrivateClasses := ValueHolder with:false.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   786
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   787
    ^ hidePrivateClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   788
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
    "Created: / 24.2.2000 / 16:17:02 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
infoLabelHolder 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
    infoLabelHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   794
        infoLabelHolder := ValueHolder with:''.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   795
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
    ^ infoLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   798
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
languageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
    languageHolder ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
        languageHolder := ValueHolder with: self theSingleSelectedLanguageFromMethodOrClass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
        self selectedMethods onChangeSend: #updateLanguageHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
        self selectedClasses onChangeSend: #updateLanguageHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
    ^languageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
    "Created: / 20-07-2010 / 16:03:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   810
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   811
lintRuleListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   812
    lintRuleListGenerator ifNil: [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   813
        lintRuleListGenerator := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   814
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   815
    ^lintRuleListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   816
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   817
    "Created: / 22-07-2009 / 15:27:48 / Jan Vrany <vranyj1@fel.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   818
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   819
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   820
messageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   821
    "return/create the 'messageHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   822
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   823
    messageHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   824
        messageHolder := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   825
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   826
    ^ messageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   827
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   828
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   829
messageHolder:aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   830
    "set the 'messageHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   831
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
    messageHolder := aValueHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   834
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   835
messageSpecHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   836
    "return/create the 'messageSpecHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   837
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   838
    messageSpecHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   839
        messageSpecHolder := ValueHolder with:#messageInfoSpec.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   841
    ^ messageSpecHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   842
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   843
    "Modified: / 28-08-2010 / 11:40:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   844
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   845
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   846
messageSpecHolder:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
    "set the 'messageSpecHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   849
    messageSpecHolder := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   850
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   851
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   852
meta
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   853
    meta isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   854
        meta := ValueHolder with:false.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   855
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   856
    ^ meta
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   857
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   858
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   859
metaToggleLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   860
    metaToggleLabel isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   861
        metaToggleLabel := ValueHolder with:'Class'.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
    ^ metaToggleLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   865
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   866
methodInfo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   867
    methodInfo isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   868
        methodInfo := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   869
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   870
    ^ methodInfo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   871
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   872
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
methodList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   874
    |methodListApplication|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   875
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
    methodListApplication := self methodListApplication.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
    methodListApplication isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
    ^ methodListApplication methodList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   880
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   881
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
modeLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
    modeLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   884
        modeLabelHolder := self codeView modeLabelHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   885
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
    ^ modeLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   889
nameSpaceFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   890
    nameSpaceFilter isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   891
        nameSpaceFilter := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   892
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   893
    ^ nameSpaceFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   894
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   895
    "Created: / 18.8.2000 / 14:25:24 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   896
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   897
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   898
nameSpaceListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   899
    nameSpaceListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   900
        nameSpaceListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   901
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   902
    ^ nameSpaceListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   903
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   904
    "Created: / 18.8.2000 / 14:26:19 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
    "Modified: / 18.8.2000 / 14:27:59 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   907
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   908
navigationHistory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
    navigationHistory ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   910
        navigationHistory := NavigationHistory new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   911
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
    ^navigationHistory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
    "Created: / 21-02-2008 / 20:08:43 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
    "Modified: / 21-07-2009 / 22:39:57 / Jan Vrany <vranyj1@fel.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   916
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   917
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   918
noAllItem
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   919
    noAllItem isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   920
        noAllItem := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   921
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   922
    ^ noAllItem
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   923
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   924
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   925
organizerMode
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   926
    "return the organizerMode holder; 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   927
     holding a symbol describing how things are organized
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   928
     (#category, #hierarchy, #project or #namespace)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   929
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   930
    organizerMode isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   931
        organizerMode := OrganizerCanvas organizerModeCategory asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   932
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   933
    ^ organizerMode
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   934
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   935
    "Created: / 18.2.2000 / 13:33:55 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   936
    "Modified: / 18.8.2000 / 18:37:22 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   937
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   938
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   939
packageFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   940
    packageFilter isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   941
        packageFilter := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   942
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   943
    ^ packageFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   945
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   946
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   947
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
packageInfoBackgroundColorHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
    packageInfoBackgroundColorHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   951
        packageInfoBackgroundColorHolder := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   952
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   953
    ^ packageInfoBackgroundColorHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   955
    "Created: / 03-10-2011 / 14:04:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   956
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
packageLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
    packageLabelHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   960
        packageLabelHolder := ValueHolder with:''.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   961
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   962
    ^ packageLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   963
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   964
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
pluginVisibleHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
    pluginVisibleHolder isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
   967
        pluginVisibleHolder := ValueHolder with:false.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   968
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   969
    ^ pluginVisibleHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   970
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   971
    "Created: / 03-10-2010 / 17:50:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   972
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   973
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   974
profilerStatistics
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   975
    profilerStatistics ifNil: [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   976
        profilerStatistics := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   977
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   978
    ^profilerStatistics
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   979
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   980
    "Created: / 22-07-2009 / 15:27:48 / Jan Vrany <vranyj1@fel.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   981
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   982
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   983
profilerStatistics: aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   984
    profilerStatistics := aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   986
    "Created: / 21-02-2008 / 20:08:43 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   987
    "Modified: / 21-07-2009 / 22:41:02 / Jan Vrany <vranyj1@fel.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   990
progressHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   991
    "return/create the 'progressHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   992
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   993
    progressHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   994
        progressHolder := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   995
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   996
    ^ progressHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   997
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
progressHolder:aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
    "set the 'progressHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1001
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1002
    progressHolder := aValueHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1003
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
projectListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
    projectListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1007
        projectListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
    ^ projectListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
    "Created: / 25.2.2000 / 02:43:26 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
protocolListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
    protocolListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1017
        protocolListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1018
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1019
    ^ protocolListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1021
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1022
selectedCategories
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1023
    "a value holder on the currently selected class categories"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1024
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1025
    selectedCategories isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1026
        selectedCategories := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1028
    ^ selectedCategories
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1029
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
selectedClasses
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1032
    "a value holder on the currently selected classes"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1033
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
    selectedClasses isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1035
        selectedClasses := "SpecialValueHolder with:nil." ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
    ^ selectedClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
    "Modified: / 26-02-2013 / 12:29:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
selectedLintRules
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1043
    "a value holder on the currently selected lint rules"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1044
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1045
    selectedLintRules isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1046
        selectedLintRules := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1047
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1048
    ^ selectedLintRules
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1049
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
    "Modified: / 02-02-2010 / 20:42:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1051
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1052
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1053
selectedMethods
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1054
    "a value holder on the currently selected methods"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1055
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1056
    selectedMethods isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1057
        selectedMethods := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1058
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1059
    ^ selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1060
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1061
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1062
selectedMethodsArrayAt:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1063
    |holder|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1064
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1065
    selectedMethodsArray isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1066
        selectedMethodsArray := OrderedCollection new 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1067
    ].
15651
064faa82f63f class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15343
diff changeset
  1068
    selectedMethodsArray ensureSizeAtLeast:index.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1069
    holder := selectedMethodsArray at:index.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1070
    holder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1071
        selectedMethodsArray at:index put:(holder := ValueHolder new)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1072
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1073
    ^ holder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1074
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1075
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1076
selectedNamespaces
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1077
    "a value holder on the currently selected namespaces"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1078
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
    selectedNamespaces isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1080
        selectedNamespaces := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1082
    ^ selectedNamespaces
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
selectedProjects
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1086
    "a value holder on the currently selected projects"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1087
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
    selectedProjects isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1089
        selectedProjects := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
    ^ selectedProjects
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
selectedProtocols
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1095
    "a value holder on the currently selected protocols"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1096
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
    selectedProtocols isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1098
        selectedProtocols := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1099
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1100
    ^ selectedProtocols
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1101
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1102
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
selectorListGenerator
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1104
    "a value holder on the current selector generator"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1105
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1106
    selectorListGenerator isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1107
        selectorListGenerator := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
    ^ selectorListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1111
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
selectorListGeneratorArray
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
    self halt:'should not be invoked'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
selectorListGeneratorArrayAt:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
    |holder|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1118
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1119
    selectorListGeneratorArray isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
        selectorListGeneratorArray := OrderedCollection new 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1121
    ].
15651
064faa82f63f class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15343
diff changeset
  1122
    selectorListGeneratorArray ensureSizeAtLeast:index.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1123
    holder := selectorListGeneratorArray at:index.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1124
    holder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1125
        selectorListGeneratorArray at:index put:(holder := ValueHolder new)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1126
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
    ^ holder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1129
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1130
sortBy
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
    sortBy isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1132
        sortBy := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1133
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
    ^ sortBy
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1137
theSingleSelectedBookmarkFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
    | mth cls |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
    mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1142
    (mth notNil and:[mth mclass notNil]) ifTrue:[
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1143
        ^ Tools::NewSystemBrowser bookmarkForClass:mth mclass selector:mth selector
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1144
    ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1145
    (cls := self theSingleSelectedClass) notNil ifTrue:[
15343
8f3a9bc0b6dd class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15324
diff changeset
  1146
        cls name notNil ifTrue:[
8f3a9bc0b6dd class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15324
diff changeset
  1147
            ^ Tools::NewSystemBrowser bookmarkForClass:cls selector:nil
8f3a9bc0b6dd class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15324
diff changeset
  1148
        ].
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1149
    ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1150
    ^ nil
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1151
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1152
    "Created: / 02-06-2011 / 22:16:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1153
    "Modified: / 02-06-2011 / 23:19:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1154
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1155
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1156
theSingleSelectedClassFromMethodHolder
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1157
    "computes the class from the current single selected method"
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
    ^BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
        with:
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1161
            [:i1 :i2| 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1162
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1163
            | mth cls |
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1164
            mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1165
            cls := mth isNil 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1166
                    ifTrue:[ nil ] 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1167
                    ifFalse:[ mth mclass ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1168
            cls isNil ifTrue:[
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1169
                cls := self theSingleSelectedClass
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1170
            ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1171
            cls
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1172
        ]
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1173
        argument: self selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
        argument: self selectedClasses.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1175
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1176
    "Created: / 14-02-2010 / 10:05:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1177
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1178
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1179
theSingleSelectedClassHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1180
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1181
    ^BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1182
        with:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1183
            [:i1 | self theSingleSelectedClass]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1184
        argument: 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1185
            self selectedClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1186
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
    "Created: / 05-08-2011 / 09:44:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1188
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1189
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
theSingleSelectedLanguageFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1192
    | mth cls |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1193
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1194
    mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1195
    mth notNil ifTrue:[ ^ mth programmingLanguage ].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1196
    cls := self theSingleSelectedClass.
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1197
    cls notNil ifTrue:[ ^ cls programmingLanguage ].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1198
    ^SmalltalkLanguage instance
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1200
    "Created: / 20-07-2010 / 15:59:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1201
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1202
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1203
theSingleSelectedMethodHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1204
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1205
    ^BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1206
        with:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1207
            [:i1 | self theSingleSelectedMethod]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1208
        argument: 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1209
            self selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1210
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1211
    "Created: / 17-06-2011 / 12:39:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1212
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1213
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1214
updateBookmarkHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1215
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1216
   ^self bookmarkHolder value: self theSingleSelectedBookmarkFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1217
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1218
    "Created: / 02-06-2011 / 22:13:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1219
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1220
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1221
updateLanguageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1222
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1223
   ^self languageHolder value: self theSingleSelectedLanguageFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1224
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1225
    "Created: / 20-07-2010 / 16:05:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1226
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1227
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1228
variableFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1229
    variableFilter isNil ifTrue:[
15269
bca25e16f601 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14969
diff changeset
  1230
        variableFilter := ValueHolder with:nil.
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1231
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1232
    ^ variableFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1233
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1234
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1235
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1236
15651
064faa82f63f class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15343
diff changeset
  1237
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1238
!NavigationState methodsFor:'aspects-kludges'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1239
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1240
metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1241
    metaToggle isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1242
        metaToggle := PluggableAdaptor on:(self meta).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1243
        metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1244
            getBlock:[:m | m value == true]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1245
            putBlock:[:m :newValue | m value:(newValue ? false)]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1246
            updateBlock:[:m :aspect :param | true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1247
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1248
    ^ metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1249
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1250
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1251
notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1252
    notMetaToggle isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1253
        notMetaToggle := PluggableAdaptor on:(self meta).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1254
        notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1255
            getBlock:[:m | m value == false]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1256
            putBlock:[:m :newValue | m value:(newValue ? false) not]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1257
            updateBlock:[:m :aspect :param | true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1258
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1259
    ^ notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1260
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1261
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1262
!NavigationState methodsFor:'history'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1263
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1264
addToHistory: class selector: selector
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1265
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1266
    | entry |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1267
    "/selector ifNil:[^self].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1268
    entry := SystemBrowser historyEntryForClass: class selector: selector.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1269
    self navigationHistory goTo: entry.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1270
    ^entry
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1271
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1272
    "Created: / 22-02-2008 / 08:44:05 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1273
    "Modified: / 22-02-2008 / 17:20:00 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1274
    "Modified: / 06-04-2012 / 10:55:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1275
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1276
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1277
!NavigationState methodsFor:'printing & storing'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1278
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1279
colorizeForModifiedBuffer:someString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1280
    ^ someString asText emphasisAllAdd:(UserPreferences current emphasisForModifiedBuffer)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1281
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1282
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1283
nameString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1284
    "a descriptive string of what this state shows"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1285
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1286
    |s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1287
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1288
    s := self rawNameStringOrNil ? 'nothing selected'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1289
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1290
    (self realModifiedState == true) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1291
        ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1292
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1293
    ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1294
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1295
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1296
nameStringOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1297
    "a descriptive string of what this state shows"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1298
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1299
    |s "codeView"|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1300
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1301
    s := self rawNameStringOrNil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1302
    s notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1303
        self realModifiedState == true 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1304
"/    ((codeView := self codeView) notNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1305
"/    and:[codeView modified]) 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1306
        ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1307
            ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1308
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1309
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1310
    ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1311
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1312
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1313
rawNameStringForCategory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1314
    |categories theCategory|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1315
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1316
    categories := self selectedCategories value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1317
    categories size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1318
        theCategory := categories first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1319
        theCategory notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1320
            ^ theCategory string, ' [Category]'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1321
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1322
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1323
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1324
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1325
    "Created: / 18.8.2000 / 19:42:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1326
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1327
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1328
rawNameStringForNameSpace
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1329
    |namespaces theNamespace nsName s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1330
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1331
    namespaces := self selectedNamespaces value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1332
    namespaces size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1333
        theNamespace := namespaces first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1334
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1335
    theNamespace notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1336
        theNamespace isNameSpace ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1337
            nsName := theNamespace name
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1338
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1339
            nsName := theNamespace
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1340
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1341
        s := nsName , ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1342
        (self isNameSpaceBrowser or:[self isNameSpaceFullBrowser]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1343
            ^ LabelAndIcon icon:(NewSystemBrowser nameSpaceIcon) string:s.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1345
        ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1346
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1347
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1349
    "Created: / 18.8.2000 / 20:15:02 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1350
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1351
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1352
rawNameStringForProject
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1353
    |projects theProject s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1354
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1355
    projects := self selectedProjects value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1356
    projects size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1357
        theProject := projects first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1358
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1359
    theProject notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1360
        s := theProject , ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1361
        (self isProjectBrowser or:[self isProjectFullBrowser]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1362
            ^ LabelAndIcon icon:(NewSystemBrowser packageIcon) string:s.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1363
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1364
        ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1365
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1366
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1367
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1368
    "Created: / 18.8.2000 / 20:18:34 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1369
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1370
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1371
rawNameStringOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1372
    "a descriptive string of what this state shows; nil, if nothing is selected"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1373
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1374
    ^ self rawNameStringOrNilWantShort:false
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1375
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1376
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1377
rawNameStringOrNilWantShort:shortName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1378
    "a descriptive string of what this state shows; nil, if nothing is selected"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1379
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1380
    |lbl nr numClasses numMethods numCategories cats classes theClass   
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1381
     "protocols theProtocol" 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1382
     methods theSingleMethod projects theProject longName nm methodName suffix cls|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1383
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1384
    browserLabel notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1385
        "/ add the number of selected methods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1386
        ((canvasType == #singleFullProtocolBrowserSpec)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1387
        or:[canvasType == #methodListBrowserSpec]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1388
            nr := self selectedMethods value size.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1389
            nr > 5 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1390
                ^ browserLabel string , ' - ' , nr printString , ' methods'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1391
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1392
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1393
        ^ browserLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1394
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1395
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1396
    suffix := ''.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1397
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1398
    self isProtocolOrFullProtocolBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1399
        lbl := self rawNameStringForProject.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1400
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1401
        suffix := ' [Protocol]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1402
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1403
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1404
    self isCategoryBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1405
        lbl := self rawNameStringForCategory.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1406
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1407
        suffix := ' [Category]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1408
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1409
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1410
    self isNameSpaceBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1411
        lbl := self rawNameStringForNameSpace.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1412
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1413
        suffix := ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1414
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1415
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1416
    self isProjectBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1417
        projects := self selectedProjects value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1418
        projects size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1419
            theProject := projects first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1420
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1421
        suffix := ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1422
        theProject notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1423
            ^ theProject , suffix
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1424
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1425
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1426
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1427
    classes := self selectedClasses value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1428
    classes size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1429
        theClass := classes first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1430
        theClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1431
            theClass := theClass theNonMetaclass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1433
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1434
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1435
    self isClassBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1436
        suffix := ' [Class]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1437
        theClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1438
            ^ theClass name , suffix
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1439
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1440
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1441
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1442
"/    protocols := self selectedProtocols value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1443
"/    protocols size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1444
"/        theProtocol := protocols first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1445
"/    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1446
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1447
    methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1448
    methods size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1449
        theSingleMethod := methods first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1450
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1451
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1452
    theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1453
        methodName := theSingleMethod selector.
15324
190af6d17b2e class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15269
diff changeset
  1454
        "/ cg: I see no reason to suppress this information
190af6d17b2e class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15269
diff changeset
  1455
        "/ methodName isSymbol ifTrue:[methodName := methodName selectorWithoutNameSpace].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1456
        theSingleMethod isJavaMethod ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1457
            methodName := theSingleMethod printStringForBrowserWithSelector:methodName.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1458
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1459
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1460
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1461
    self isMethodBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1462
        suffix := ' [Selector]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1463
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1464
        theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1465
            theSingleMethod mclass isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1466
                ^ '???'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1467
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1468
            ^ theSingleMethod mclass name , ' ' , methodName , suffix
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1469
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1470
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1471
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1472
    self isCategoryBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1473
        suffix :=  ' [Category]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1474
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1475
        self isFullClassSourceBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1476
            suffix :=  ' [Full]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1477
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1478
            self isClassDocumentationBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1479
                suffix :=  ' [Doc]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1480
            ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1481
                self isProjectBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1482
                    suffix :=  ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1483
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1484
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1485
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1486
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1487
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1488
    nm := nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1489
    (numClasses := classes size) > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1490
        numClasses > 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1491
            methods size > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1492
                theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1493
                    cls := theSingleMethod mclass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1494
                    cls isNil ifTrue:[ 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1495
                        "/ oops - unbound
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1496
                        nm := '???'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1497
                    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1498
                        longName := nm := cls nameInBrowser.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1499
                        shortName ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1500
                            nm := cls nameWithoutPrefix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1501
                            cls isPrivate ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1502
                                nm := ':' , nm
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1503
                            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1504
                        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1505
                    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1506
                    nm := nm , ' ', (methodName ? '???')
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1507
                ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1508
                    nm := methods size printString , ' methods'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1509
                    numClasses := (methods collect:[:each | each mclass] as:IdentitySet) size.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1510
                    numClasses > 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1511
                        nm := nm , ' in ' , numClasses printString , ' classes'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1512
                    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1513
                ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1514
                ^ nm , suffix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1515
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1516
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1517
            nm := numClasses printString , ' classes in '.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1518
            "/ cats := self selectedCategories value
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1519
            cats := classes collect:[:each | each category] as:Set.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1520
            (numCategories := cats size) == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1521
                nm := nm , cats first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1522
            ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1523
                nm := nm , numCategories printString , ' categories'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1524
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1525
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1526
            cls := theClass theNonMetaclass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1527
            longName := nm := cls nameInBrowser.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1528
            shortName ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1529
                nm := cls nameWithoutPrefix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1530
                cls isPrivate ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1531
                    nm := ':' , nm
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1532
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1533
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1534
            methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1535
            (numMethods := methods size) > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1536
                numMethods == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1537
                    theSingleMethod := methods first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1538
                    nm := nm , ' ', (methodName ? '???')
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1539
                ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1540
                    nm := numMethods printString , ' methods in ' , nm
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1541
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1542
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1543
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1544
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1545
        (self isNameSpaceBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1546
        or:[self isNameSpaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1547
        or:[organizerMode value == OrganizerCanvas organizerModeNamespace]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1548
            lbl := self rawNameStringForNameSpace.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1549
            lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1550
            suffix := ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1551
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1552
            (self isProjectBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1553
            or:[self isProjectFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1554
            or:[organizerMode value == OrganizerCanvas organizerModeProject]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1555
                lbl := self rawNameStringForProject.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1556
                lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1557
                suffix := ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1558
            ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1559
                cats := self selectedCategories value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1560
                cats size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1561
                    nm := (cats first ? '') string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1562
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1563
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1564
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1565
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1566
    nm isNil ifTrue:[ ^ nil ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1567
    ^ nm , suffix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1568
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1569
    "Created: / 11-02-2000 / 13:32:16 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1570
    "Modified: / 18-08-2000 / 21:06:35 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1571
    "Modified: / 20-07-2010 / 10:52:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1572
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1573
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1574
shortNameString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1575
    "a descriptive string of what this state shows"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1576
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1577
    |s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1578
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1579
    s := (self rawNameStringOrNilWantShort:true) ? 'nothing selected'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1580
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1581
    (self realModifiedState == true) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1582
        ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1583
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1584
    ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1585
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1586
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1587
!NavigationState methodsFor:'queries'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1588
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1589
isCategoryBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1590
    ^ canvasType == #categoryBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1591
      or:[ canvasType == #singleCategoryBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1592
      or:[ canvasType == #multipleCategoryBrowserSpec ]]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1593
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1594
    "Modified: / 25.2.2000 / 01:17:02 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1595
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1596
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1597
isChainBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1598
    ^ canvasType == #chainBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1599
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1600
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1601
isCheckOutputBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1602
    ^ canvasType == #multipleClassWithInfoAndMethodWithInfoBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1603
      or:[canvasType == #multipleMethodWithInfoBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1604
      or:[canvasType == #multipleClassWithInfoBrowserSpec]]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1605
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1606
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1607
isClassBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1608
    ^ canvasType == #classBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1609
      or:[ canvasType == #singleClassBrowserSpec
16568
591a21c10e45 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16561
diff changeset
  1610
      or:[ canvasType == #singleClassWithoutVariableListBrowserSpec
591a21c10e45 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16561
diff changeset
  1611
      or:[ canvasType == #multipleClassBrowserSpec ]]]
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1612
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1613
    "Modified: / 25.2.2000 / 00:38:07 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1614
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1615
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1616
isClassDocumentationBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1617
    ^ canvasType == #classDocumentationBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1618
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1619
    "Created: / 24.2.2000 / 14:54:40 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1620
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1621
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1622
isClassExtensionBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1623
    ^ canvasType == #multipleClassExtensionBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1624
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1625
    "Created: / 24.2.2000 / 14:54:40 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1626
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1627
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1628
isFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1629
    ^ canvasType == #fullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1630
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1631
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1632
isFullClassSourceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1633
    ^ canvasType == #fullClassSourceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1634
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1635
    "Created: / 24.2.2000 / 14:54:40 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1636
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1637
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1638
isFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1639
    ^ canvasType == #singleFullProtocolBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1640
      or:[ canvasType == #multipleFullProtocolBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1641
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1642
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1643
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1644
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1645
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1646
isLintResultBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1647
    ^ canvasType == #smallLintByRuleResultBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1648
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1649
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1650
isMethodBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1651
    ^ canvasType == #methodListBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1652
      or:[ canvasType == #singleMethodBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1653
      or:[ canvasType == #multipleMethodBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1654
      or:[ canvasType == #multipleMethodWithInfoBrowserSpec ]]]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1655
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1656
    "Modified: / 1.3.2000 / 13:35:12 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1657
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1658
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1659
isMethodListBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1660
    canvasType == #methodListBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1661
    canvasType == #multipleMethodBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1662
    canvasType == #singleProtocolBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1663
    ^ false.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1664
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1665
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1666
isNameSpaceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1667
    ^ canvasType == #singleNameSpaceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1668
      or:[ canvasType == #multipleNameSpaceBrowserSpec]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1669
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1670
    "Modified: / 18.8.2000 / 16:12:34 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1671
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1672
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1673
isNameSpaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1674
    ^ canvasType == #singleNameSpaceFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1675
      or:[ canvasType == #multipleNameSpaceFullBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1676
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1677
    "Created: / 18.8.2000 / 14:58:36 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1678
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1679
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1680
isProjectBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1681
    ^ canvasType == #singleProjectBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1682
      or:[ canvasType == #multipleProjectBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1683
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1684
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1685
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1686
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1687
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1688
isProjectFullBrowser
16939
4b950460cad2 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16896
diff changeset
  1689
    "showing a single or multiple full projects
4b950460cad2 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16896
diff changeset
  1690
     (but not a regular browser, in projects-mode."
4b950460cad2 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16896
diff changeset
  1691
    
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1692
    ^ canvasType == #singleProjectFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1693
      or:[ canvasType == #multipleProjectFullBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1694
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1695
    "Created: / 18.8.2000 / 19:02:49 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1696
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1697
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1698
isProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1699
    ^ canvasType == #singleProtocolBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1700
      or:[ canvasType == #multipleProtocolBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1701
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1702
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1703
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1704
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1705
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1706
isProtocolOrFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1707
    ^ self isProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1708
      or:[ self isFullProtocolBrowser ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1709
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1710
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1711
isSingleCategoryBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1712
    ^ canvasType == #singleCategoryBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1713
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1714
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1715
isSingleClassBrowser
16568
591a21c10e45 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16561
diff changeset
  1716
    ^ (canvasType == #singleClassBrowserSpec)
591a21c10e45 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16561
diff changeset
  1717
    or:[ canvasType == #singleClassWithoutVariableListBrowserSpec ]
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1718
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1719
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1720
isSingleFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1721
    ^ canvasType == #singleFullProtocolBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1722
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1723
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1724
isSingleMethodBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1725
    ^ canvasType == #singleMethodBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1726
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1727
    "Created: / 1.3.2000 / 13:35:52 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1728
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1729
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1730
isSingleNamespaceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1731
    ^ canvasType == #singleNameSpaceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1732
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1733
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1734
isSingleNamespaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1735
    ^ canvasType == #singleNameSpaceFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1736
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1737
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1738
isSingleProjectBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1739
    ^ canvasType == #singleProjectBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1740
      or:[ canvasType == #singleProjectFullBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1741
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1742
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1743
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1744
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1745
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1746
isSingleProjectFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1747
    ^ canvasType == #singleProjectFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1748
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1749
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1750
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1751
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1752
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1753
isSingleProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1754
    ^ canvasType == #singleProtocolBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1755
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1756
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1757
isVersionDiffBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1758
    ^ canvasType == #multipleClassRepositoryDiffBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1759
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1760
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1761
!NavigationState class methodsFor:'documentation'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1762
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1763
version
15820
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
  1764
    ^ '$Header$'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1765
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1766
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1767
version_CVS
15820
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
  1768
    ^ '$Header$'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1769
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1770
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1771
version_SVN
15820
51e0d4036100 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 15651
diff changeset
  1772
    ^ '$Id$'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1773
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1774
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1775
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1776
NavigationState initialize!