Tools__NavigationState.st
author Claus Gittinger <cg@exept.de>
Sun, 01 Feb 2015 14:17:11 +0100
changeset 15150 940d37c7d3ac
parent 14969 a77496b91db7
child 15269 bca25e16f601
permissions -rw-r--r--
class: Tools::ChangeList fixed the following redraw bug in ModelListView (which is already fixed in SelectionInListView): if a colored item is shown with selection, the color attribute should be removed (or relaxed), to avoid drawing the label invisible. I.e. if the text color is blue or grey, and the selection bg is blue. we should draw white-on-blue, instead of blue/grey on blue. For this to work, the info whether drawing a selection must be passed down through the renderer to the item's draw routine.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
		autoSearchIgnoreCase autoSearchAction realModifiedStateHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
		methodInfo versionDiffApplication selectorListGeneratorArray
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
		selectedMethodsArray infoLabelHolder packageLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
		cursorLineLabelHolder cursorColLabelHolder modeLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
		sortVariablesBy editModeHolder scrollableCodeView specialEditors
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
		selectedEditorNoteBookTabIndexHolder editorNoteBookListHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
		editorNoteBookCanvasHolder codeView stringSearchToolView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
		noteBookView inheritanceView documentationView languageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
		messageSpecHolder messageHolder progressHolder tabContentView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
		messagePaneView codePaneAndPluginView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
		codePaneAndPluginViewRelativeCorners pluginVisibleHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
		bookmarkHolder worker packageInfoBackgroundColorHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
		packageInfoButton showMethodTemplate lastMethodShownInCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
		showingParseError navigationHistory lintRuleListGenerator
14160
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
    41
		profilerStatistics inlineMessageApplication'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
	classVariableNames:'CodeAspectTranslations'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
	poolDictionaries:''
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
	category:'Interface-Browsers-New'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!
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
!NavigationState class methodsFor:'documentation'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
copyright
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
 COPYRIGHT (c) 2000 by eXept Software AG
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
              All Rights Reserved
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
 This software is furnished under a license and may be used
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
 only in accordance with the terms of that license and with the
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
 inclusion of the above copyright notice.   This software may not
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
 be provided or otherwise made available to, or used by, any
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
 other person.  No title to or ownership of the software is
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
 hereby transferred.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
"
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
!NavigationState class methodsFor:'initialization'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
initialize
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
    "Invoked at system start or when the class is dynamically loaded."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    "/ please change as required (and remove this comment)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
    CodeAspectTranslations := Dictionary new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    CodeAspectTranslations at: #newApplication put: SyntaxHighlighter codeAspectClassDefinition.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
    CodeAspectTranslations at: #newError put: SyntaxHighlighter codeAspectClassDefinition.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
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
    "/ Add more...
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
    "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
    78
! !
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
!NavigationState methodsFor:'accessing'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
autoSearchAction
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
!
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
autoSearchAction:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
    autoSearchAction := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
autoSearchIgnoreCase
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
    "return true if the autSearch is to be case-insensitive"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
!
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:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
    "change the autSearches case-insensitivenes"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
!
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
autoSearchPattern
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
    "return the automatic search pattern"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
    ^ autoSearchPattern
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
autoSearchPattern:aPattern
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
    "change the automatic search pattern"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
    autoSearchPattern := aPattern.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
browserLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
    "return the assigned state-label (to be shown in the tab)."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
    ^ browserLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
browserLabel:aString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
    "set the assigned state-label (to be shown in the tab)."
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
    browserLabel := aString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
canvas
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    ^ canvas
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
canvas:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
    canvas := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
    canvasType isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
        canvasType := something spec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
canvasType
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
    "return the type of canvas"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
    ^ canvasType
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
canvasType:aSpecSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
    "set the type of canvas"
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
    canvasType notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
        canvasType ~~ aSpecSymbol ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
            self halt:'cannot be changed, once set'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
    canvasType := aSpecSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
!
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
codeAspect
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
    "return the codeAspect; a symbol describing what is shown in the codeView"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
    ^ codeAspect
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
    "Created: / 11.2.2000 / 12:43:29 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
codeAspect:aSymbolOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
    "set the codeAspect; a symbol describing what is shown in the codeView"
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
    codeAspect := aSymbolOrNil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
    (codeView notNil and:[codeView isCodeView2]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
        | xlatedCodeAspect |
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
        xlatedCodeAspect := CodeAspectTranslations at: aSymbolOrNil ifAbsent: aSymbolOrNil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
        codeView codeAspect: xlatedCodeAspect
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    "Created: / 11-02-2000 / 12:43:45 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
    "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
   175
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
codePaneAndPluginView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
    ^ codePaneAndPluginView
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
codePaneAndPluginView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
    codePaneAndPluginView := something.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
codePaneAndPluginViewRelativeCorners
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    codePaneAndPluginViewRelativeCorners ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
        codePaneAndPluginViewRelativeCorners := #(0.76 1.0)
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
    ^ codePaneAndPluginViewRelativeCorners
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
    "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
   192
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
codePaneAndPluginViewRelativeCorners: anArray
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
    codePaneAndPluginViewRelativeCorners := anArray.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
    "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
   199
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
editorNoteBookCanvasHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
    editorNoteBookCanvasHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
        editorNoteBookCanvasHolder := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
    ^ editorNoteBookCanvasHolder
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
editorNoteBookListHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
    editorNoteBookListHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
        editorNoteBookListHolder := #() asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
    ^ editorNoteBookListHolder
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
environment
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
    ^ Smalltalk
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
!
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
lastMethodShownInCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
    ^ lastMethodShownInCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
!
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
lastMethodShownInCodeView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
    lastMethodShownInCodeView := something.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
messagePaneView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    ^ messagePaneView
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
messagePaneView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
    messagePaneView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
!
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
modified
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
    "check for modified code by asking the editTextView;
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
     this one returns true if ever modified - even if
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
     the modifications where undone in the editor
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
     (i.e. not really modified).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
     Use #reallyModified if the contents should be compared
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
     against the original contents"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
    |v|
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
    self realModifiedState == true ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
    self anySpecialEditorModified ifTrue:[^ true].
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
    ^ (v := self codeView) notNil and:[v modified]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
modified:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
    |codeView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
    (codeView := self codeView) notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
        codeView modified:aBoolean
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
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
        specialEditors do:[:anEditor | 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
            anEditor application modified:aBoolean
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
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
!
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
noteBookView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
    ^ noteBookView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
noteBookView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
    noteBookView := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
realModifiedState
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
    ^ self realModifiedStateHolder value
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
realModifiedState:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
    self realModifiedStateHolder value:aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
!
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
realModifiedStateHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
    realModifiedStateHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
        realModifiedStateHolder := ValueHolder new.
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
    ^ realModifiedStateHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
!
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
selectedEditorNoteBookTabIndexHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
    selectedEditorNoteBookTabIndexHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
        selectedEditorNoteBookTabIndexHolder := 1 asValue.
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
    ^ selectedEditorNoteBookTabIndexHolder
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
showMethodTemplate
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
    ^ showMethodTemplate ? true
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
    "Created: / 12-02-2012 / 08:49:32 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
showMethodTemplate: aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
    showMethodTemplate := aBoolean
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
    "Created: / 12-02-2012 / 08:49:45 / cg"
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
showingParseError
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    ^ showingParseError
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
showingParseError:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    showingParseError := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
!
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
stringSearchToolView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    ^ stringSearchToolView
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
stringSearchToolView: aStringSearchTool
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
    stringSearchToolView := aStringSearchTool
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
!
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
tabContentView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
    ^ tabContentView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
!
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
tabContentView:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
    tabContentView := something.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
worker
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    ^ worker
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
!
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
worker:aProcess
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
    worker := aProcess.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
! !
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
!NavigationState methodsFor:'accessing-selection'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
theSingleSelectedClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
    "if only one class is selected, return it.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
     Otherwise, return nil"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
    |classes|
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
    classes := self selectedClasses value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
    classes size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
        ^ classes first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
    ^ nil
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
theSingleSelectedMethod
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
    "if only one method is selected, return it.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
     Otherwise, return nil"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
    |methods|
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
    methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
    methods size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
        ^ methods first
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
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
!NavigationState methodsFor:'accessing-subApps'!
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
applicationOfComponent:aComponentName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    ^ self applicationOfComponent:aComponentName or:nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
applicationOfComponent:aComponentName or:anotherComponentName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
    |builder view|
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
    canvas isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
    builder := canvas builder.
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
    view := builder findVisibleComponentAt:aComponentName.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    (view isNil and:[anotherComponentName notNil]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
        view := builder findVisibleComponentAt:anotherComponentName.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
    view notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
        ^ view application
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
classCategoryListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
    ^ self applicationOfComponent:#ClassCategoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
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
classHierarchyListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
    ^ self applicationOfComponent:#ClassHierarchyList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
classListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
    ^ self applicationOfComponent:#ClassList
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
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
14160
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   406
inlineMessageApplication
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   407
    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
   408
        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
   409
    ].
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   410
    ^ inlineMessageApplication
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   411
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   412
    "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
   413
!
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
   414
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
metaToggleComponent
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
    ^ canvas builder findComponentAt:#ClassToggle.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
!
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
methodCategoryListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
    ^ self applicationOfComponent:#MethodCategoryList
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
methodListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
    ^ self applicationOfComponent:#MethodList
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
nameSpaceListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
    ^ self applicationOfComponent:#NamespaceList or:#PseudoNamespaceList
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
projectListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
    ^ self applicationOfComponent:#ProjectList or:#PseudoProjectList
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
variableListApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    ^ self applicationOfComponent:#VariableList 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
versionDiffApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
    ^ versionDiffApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
versionDiffApplication:anApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
    versionDiffApplication := anApplication
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
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
!NavigationState methodsFor:'accessing-subViews'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
anySpecialEditorModified
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
        ^ specialEditors contains:[:anEditor | anEditor application isModified].    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
    ^ false
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
codeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
    codeView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
        codeView := self scrollableCodeView scrolledView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
    ^ codeView
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
doSaveInSpecialEditors
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    specialEditors notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
        specialEditors do:[:anEditor | 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
            anEditor application isModified ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
                anEditor application save.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
                ^ self.
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
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
documentationView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
    |textView|
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
    documentationView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
        textView := CodeView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
        documentationView := HVScrollableView forView:textView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
    ^ documentationView
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
getCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
    ^ codeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
inheritanceView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
    inheritanceView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
        |classTreeView scrolledView|
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
        classTreeView := ClassTreeGraphView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
        scrolledView := HVScrollableView forView:classTreeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
        classTreeView middleButtonMenu:nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
        inheritanceView := scrolledView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
    ^ inheritanceView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
!
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
methodCategoryList: aView
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
    | builder |
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
    builder := canvas builder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
    builder namedComponents at: #MethodCategoryList put: aView.
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
    "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
   510
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
methodList: aView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
    | builder |
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
    builder := canvas builder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
    builder namedComponents at: #MethodList put: aView.
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
    "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
   520
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
packageInfoButton
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
    ^ packageInfoButton
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
packageInfoButton:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
    packageInfoButton := something.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
scrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
    scrollableCodeView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
        scrollableCodeView := self setUpScrollableCodeView.
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
    ^ scrollableCodeView
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
setUpScrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
    |v newScrollableCodeView newCodeView |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
    (UserPreferences current useCodeView2In: #Browser) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
        newCodeView := newScrollableCodeView := CodeView2 new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
        newCodeView mode: #method.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
        newCodeView methodHolder: self theSingleSelectedMethodHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
        newCodeView classHolder: self theSingleSelectedClassHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
        newScrollableCodeView := HVScrollableView for:CodeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
        newCodeView := newScrollableCodeView scrolledView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
        newScrollableCodeView horizontalMini:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
    ].
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
    newScrollableCodeView name:'CodeView'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
    newCodeView modifiedChannel:self codeModifiedHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
    newCodeView model:self codeHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
    newCodeView canTab:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
    UserPreferences current useCodeView2InTools ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
        newCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
            classHolder:self theSingleSelectedClassFromMethodHolder;
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
            languageHolder:self languageHolder
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
    (UserPreferences current showAcceptCancelBarInBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
        and:[newCodeView isCodeView2 not or:[UserPreferences current codeView2ShowAcceptCancel not]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
        ViewWithAcceptAndCancelBar notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
            v := ViewWithAcceptAndCancelBar new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
            v slaveView:newScrollableCodeView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
            v reallyModifiedHolder:self realModifiedStateHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
            v cancelAction:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
                [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
                    "/ codeView setClipboardText:(codeView contents).   "/ for undo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
                    newCodeView device rememberInCopyBufferHistory:(newCodeView contents).  "/ for undo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
                    newCodeView application
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
                        delayedUpdateCodeWithAutoSearch:false checkModified:false.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
                    newCodeView requestFocus.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
                ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
            v compareAction:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
                [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
                    newCodeView application doCompareIn:self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
                    newCodeView requestFocus
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
            newScrollableCodeView := v.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
   ^newScrollableCodeView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
    "Modified: / 05-07-2011 / 10:34:33 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
    "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
   588
!
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
specialEditorCanvasClassForResourceType:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
    resourceTypeSymbol == #fileImage ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
        ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
    ^ SystemBrowser resourceEditorClassFor:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
specialEditorCanvasForResourceType:resourceTypeSymbol
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
    |appClass app editorView|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
    specialEditors isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
        specialEditors := Dictionary new.    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
    editorView := specialEditors at:resourceTypeSymbol ifAbsent:nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
    editorView isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
        appClass := self specialEditorCanvasClassForResourceType:resourceTypeSymbol.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
        appClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
            app := appClass new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
            app masterApplication:self canvas application.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
            app isEmbeddedInBrowser:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
            app infoLabelHolder:(self canvas application infoLabelHolder).
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
            editorView := ApplicationSubView new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
            editorView buildMenu:true.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
            editorView client:app.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
            app builder window:editorView.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
            specialEditors at:resourceTypeSymbol put:editorView.
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
    ^ editorView
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
!NavigationState methodsFor:'aspects'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
bookmarkHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
    "return/create the 'bookmarkHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
    bookmarkHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
        bookmarkHolder := ValueHolder with: self theSingleSelectedBookmarkFromMethodOrClass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
        self selectedMethods onChangeSend: #updateBookmarkHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
        self selectedClasses onChangeSend: #updateBookmarkHolder to: self.
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
    ^ bookmarkHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
    "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
   636
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
categoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
    categoryList isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
        categoryList := nil asValue.
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
    ^ categoryList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
    "Created: / 25.2.2000 / 01:57:45 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
categoryListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
    categoryListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
        categoryListGenerator := nil asValue.
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
    ^ categoryListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
    "Created: / 25.2.2000 / 01:34:30 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
!
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
classDocumentationHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
    classDocumentationHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
        classDocumentationHolder := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
    ^ classDocumentationHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
!
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
classHierarchyTopClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
    classHierarchyTopClass isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
        classHierarchyTopClass := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    ^ classHierarchyTopClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   670
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
classList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   674
    classList isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
        classList := nil asValue.
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
    ^ classList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   678
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
    "Created: / 25.2.2000 / 01:57:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   680
!
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
classListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
    classListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
        classListGenerator := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
    ^ classListGenerator
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
classListPerNameSpaceGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
    classListPerNameSpaceGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
        classListPerNameSpaceGenerator := nil asValue.
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
    ^ classListPerNameSpaceGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   697
    "Created: / 18.8.2000 / 14:15:34 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   700
codeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
    codeHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
        codeHolder := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   704
    ^ codeHolder
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
!
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
codeModifiedHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
    codeModifiedHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
        codeModifiedHolder := false asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
    ^ codeModifiedHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   713
!
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
cursorColLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
    cursorColLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
"/        self codeView isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
        cursorColLabelHolder := BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   720
                                    with:[:v | v printString]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
                                    argument:self codeView cursorColHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   722
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   723
    ^ cursorColLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   724
!
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
cursorLineLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   727
    cursorLineLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   728
"/        self codeView isNil ifTrue:[^ nil].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   729
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   730
        cursorLineLabelHolder := BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
                                    with:[:v | v printString]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   732
                                    argument:self codeView cursorLineHolder.
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
    ^ cursorLineLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
editModeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
    editModeHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
        editModeHolder := self codeView editModeHolder.
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
    ^ editModeHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   744
filterClassVars
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
    filterClassVars isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
        filterClassVars := false asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   747
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   748
    ^ filterClassVars
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   749
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   750
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   751
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   752
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   753
hidePrivateClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   754
    hidePrivateClasses isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   755
        hidePrivateClasses := false asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   756
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   757
    ^ hidePrivateClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   759
    "Created: / 24.2.2000 / 16:17:02 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   760
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   761
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   762
infoLabelHolder 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   763
    infoLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
        infoLabelHolder := '' asValue.
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
    ^ infoLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
languageHolder
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
    languageHolder ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   772
        languageHolder := ValueHolder with: self theSingleSelectedLanguageFromMethodOrClass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   773
        self selectedMethods onChangeSend: #updateLanguageHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   774
        self selectedClasses onChangeSend: #updateLanguageHolder to: self.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   775
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   776
    ^languageHolder
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
    "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
   779
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
lintRuleListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
    lintRuleListGenerator ifNil: [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
        lintRuleListGenerator := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   784
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   785
    ^lintRuleListGenerator
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
    "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
   788
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
messageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
    "return/create the 'messageHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
    messageHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
        messageHolder := ValueHolder new.
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
    ^ messageHolder
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
messageHolder:aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
    "set the 'messageHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
    messageHolder := aValueHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
messageSpecHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
    "return/create the 'messageSpecHolder' value holder (automatically generated)"
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
    messageSpecHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
        messageSpecHolder := ValueHolder with:#messageInfoSpec.
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
    ^ messageSpecHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   812
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   813
    "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
   814
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   815
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   816
messageSpecHolder:something
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   817
    "set the 'messageSpecHolder' value holder (automatically generated)"
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
    messageSpecHolder := something.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   820
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   821
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   822
meta
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   823
    meta isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   824
        meta := false asValue.
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
    ^ meta
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
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   830
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   831
metaToggleLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
    metaToggleLabel isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
        metaToggleLabel := 'Class' asValue.
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
    ^ metaToggleLabel
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   836
!
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
methodInfo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   839
    methodInfo isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
        methodInfo := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   841
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   842
    ^ methodInfo
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   843
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
methodList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
    |methodListApplication|
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
    methodListApplication := self methodListApplication.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   850
    methodListApplication isNil ifTrue:[^ nil].
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
    ^ methodListApplication methodList
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   853
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   854
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   855
modeLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   856
    modeLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   857
        modeLabelHolder := self codeView modeLabelHolder.
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
    ^ modeLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   860
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   861
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
nameSpaceFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
    nameSpaceFilter isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
        nameSpaceFilter := nil asValue.
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
    ^ nameSpaceFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   867
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   868
    "Created: / 18.8.2000 / 14:25:24 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   871
nameSpaceListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   872
    nameSpaceListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
        nameSpaceListGenerator := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   874
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   875
    ^ nameSpaceListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
    "Created: / 18.8.2000 / 14:26:19 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
    "Modified: / 18.8.2000 / 14:27:59 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
!
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
navigationHistory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
    navigationHistory ifNil:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
        navigationHistory := NavigationHistory new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   884
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   885
    ^navigationHistory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
    "Created: / 21-02-2008 / 20:08:43 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
    "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
   889
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   890
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   891
noAllItem
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   892
    noAllItem isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   893
        noAllItem := nil asValue.
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
    ^ noAllItem
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
organizerMode
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   899
    "return the organizerMode holder; 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   900
     holding a symbol describing how things are organized
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   901
     (#category, #hierarchy, #project or #namespace)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   902
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   903
    organizerMode isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   904
        organizerMode := OrganizerCanvas organizerModeCategory asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
    ^ organizerMode
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
    "Created: / 18.2.2000 / 13:33:55 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
    "Modified: / 18.8.2000 / 18:37:22 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   910
!
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
packageFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
    packageFilter isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
        packageFilter := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   916
    ^ packageFilter
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
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   919
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   920
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   921
packageInfoBackgroundColorHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   922
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   923
    packageInfoBackgroundColorHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   924
        packageInfoBackgroundColorHolder := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   925
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   926
    ^ packageInfoBackgroundColorHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   927
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   928
    "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
   929
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   930
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   931
packageLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   932
    packageLabelHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   933
        packageLabelHolder := '' asValue.
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
    ^ packageLabelHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   936
!
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
pluginVisibleHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   939
    pluginVisibleHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   940
        pluginVisibleHolder := false asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   941
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   942
    ^ pluginVisibleHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   943
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
    "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
   945
!
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
profilerStatistics
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
    profilerStatistics ifNil: [
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
        profilerStatistics := ValueHolder new.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   951
    ^profilerStatistics
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
    "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
   954
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   955
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   956
profilerStatistics: aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
    profilerStatistics := aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
    "Created: / 21-02-2008 / 20:08:43 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   960
    "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
   961
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   962
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   963
progressHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   964
    "return/create the 'progressHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
    progressHolder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   967
        progressHolder := ValueHolder new.
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
    ^ progressHolder
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   972
progressHolder:aValueHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   973
    "set the 'progressHolder' value holder (automatically generated)"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   974
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   975
    progressHolder := aValueHolder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   976
!
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
projectListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   979
    projectListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   980
        projectListGenerator := nil asValue.
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
    ^ projectListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   983
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   984
    "Modified: / 25.2.2000 / 01:35:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
    "Created: / 25.2.2000 / 02:43:26 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   986
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   987
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
protocolListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
    protocolListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   990
        protocolListGenerator := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   991
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   992
    ^ protocolListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   993
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   994
!
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
selectedCategories
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
   997
    "a value holder on the currently selected class categories"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
   998
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
    selectedCategories isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
        selectedCategories := nil asValue.
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
    ^ selectedCategories
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
selectedClasses
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1006
    "a value holder on the currently selected classes"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1007
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
    selectedClasses isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
        selectedClasses := "SpecialValueHolder with:nil." nil asValue.
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
    ^ selectedClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
    "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
  1014
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
selectedLintRules
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1017
    "a value holder on the currently selected lint rules"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1018
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1019
    selectedLintRules isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
        selectedLintRules := nil asValue.
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
    ^ selectedLintRules
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1023
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1024
    "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
  1025
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1026
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
selectedMethods
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1028
    "a value holder on the currently selected methods"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1029
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
    selectedMethods isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
        selectedMethods := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1032
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1033
    ^ selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
selectedMethodsArrayAt:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
    |holder|
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
    selectedMethodsArray isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
        selectedMethodsArray := OrderedCollection new 
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
    index > selectedMethodsArray size ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1043
        selectedMethodsArray grow:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1044
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1045
    holder := selectedMethodsArray at:index.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1046
    holder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1047
        selectedMethodsArray at:index put:(holder := ValueHolder new)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1048
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1049
    ^ holder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
!
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
selectedNamespaces
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1053
    "a value holder on the currently selected namespaces"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1054
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1055
    selectedNamespaces isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1056
        selectedNamespaces := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1057
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1058
    ^ selectedNamespaces
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1059
!
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
selectedProjects
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1062
    "a value holder on the currently selected projects"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1063
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1064
    selectedProjects isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1065
        selectedProjects := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1066
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1067
    ^ selectedProjects
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1068
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1069
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1070
selectedProtocols
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1071
    "a value holder on the currently selected protocols"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1072
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1073
    selectedProtocols isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1074
        selectedProtocols := nil asValue.
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
    ^ selectedProtocols
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1077
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1078
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
selectorListGenerator
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1080
    "a value holder on the current selector generator"
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1081
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1082
    selectorListGenerator isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
        selectorListGenerator := nil asValue.
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
    ^ selectorListGenerator
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
selectorListGeneratorArray
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
    self halt:'should not be invoked'.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
selectorListGeneratorArrayAt:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
    |holder|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1095
    selectorListGeneratorArray isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1096
        selectorListGeneratorArray := OrderedCollection new 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
    index > selectorListGeneratorArray size ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1099
        selectorListGeneratorArray grow:index
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1100
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1101
    holder := selectorListGeneratorArray at:index.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1102
    holder isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
        selectorListGeneratorArray at:index put:(holder := ValueHolder new)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1104
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1105
    ^ holder.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1106
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1107
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
sortBy
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
    sortBy isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
        sortBy := nil asValue.
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
    ^ sortBy
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
!
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
theSingleSelectedBookmarkFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
    | mth cls |
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
    mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1120
    (mth notNil and:[mth mclass notNil]) ifTrue:[
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1121
        ^ Tools::NewSystemBrowser bookmarkForClass:mth mclass selector:mth selector
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1122
    ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1123
    (cls := self theSingleSelectedClass) notNil ifTrue:[
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1124
        ^ Tools::NewSystemBrowser bookmarkForClass:cls selector:nil
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1125
    ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1126
    ^ nil
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
    "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
  1129
    "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
  1130
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1132
theSingleSelectedClassFromMethodHolder
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1133
    "computes the class from the current single selected method"
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
    ^BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
        with:
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1137
            [:i1 :i2| 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1138
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1139
            | mth cls |
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
            mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1141
            cls := mth isNil 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1142
                    ifTrue:[ nil ] 
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1143
                    ifFalse:[ mth mclass ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1144
            cls isNil ifTrue:[
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1145
                cls := self theSingleSelectedClass
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1146
            ].
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1147
            cls
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1148
        ]
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1149
        argument: self selectedMethods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1150
        argument: self selectedClasses.
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: / 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
  1153
!
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
theSingleSelectedClassHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1156
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1157
    ^BlockValue 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
        with:
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
            [:i1 | self theSingleSelectedClass]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
        argument: 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1161
            self selectedClasses
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1162
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1163
    "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
  1164
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1165
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1166
theSingleSelectedLanguageFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1167
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1168
    | mth cls |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1169
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1170
    mth := self theSingleSelectedMethod. 
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1171
    mth notNil ifTrue:[ ^ mth programmingLanguage ].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1172
    cls := self theSingleSelectedClass.
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1173
    cls notNil ifTrue:[ ^ cls programmingLanguage ].
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
    ^SmalltalkLanguage instance
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: / 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
  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
theSingleSelectedMethodHolder
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 theSingleSelectedMethod]
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 selectedMethods
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: / 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
  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
updateBookmarkHolder
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
   ^self bookmarkHolder value: self theSingleSelectedBookmarkFromMethodOrClass
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
    "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
  1195
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1196
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1197
updateLanguageHolder
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1198
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
   ^self languageHolder value: self theSingleSelectedLanguageFromMethodOrClass
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1200
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1201
    "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
  1202
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1203
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1204
variableFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1205
    variableFilter isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1206
        variableFilter := nil asValue.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1207
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1208
    ^ variableFilter
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1209
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1210
    "Created: / 24.2.2000 / 23:45:28 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1211
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1212
14160
2f0da065a87f Message pane refactored to use reusable InlineMessageDialog instead hand-coded solution.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14138
diff changeset
  1213
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1214
!NavigationState methodsFor:'aspects-kludges'!
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
metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1217
    metaToggle isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1218
        metaToggle := PluggableAdaptor on:(self meta).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1219
        metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1220
            getBlock:[:m | m value == true]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1221
            putBlock:[:m :newValue | m value:(newValue ? false)]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1222
            updateBlock:[:m :aspect :param | true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1223
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1224
    ^ metaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1225
!
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
notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1228
    notMetaToggle isNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1229
        notMetaToggle := PluggableAdaptor on:(self meta).
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1230
        notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1231
            getBlock:[:m | m value == false]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1232
            putBlock:[:m :newValue | m value:(newValue ? false) not]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1233
            updateBlock:[:m :aspect :param | true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1234
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1235
    ^ notMetaToggle
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1236
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1237
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1238
!NavigationState methodsFor:'history'!
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
addToHistory: class selector: selector
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1241
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1242
    | entry |
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1243
    "/selector ifNil:[^self].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1244
    entry := SystemBrowser historyEntryForClass: class selector: selector.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1245
    self navigationHistory goTo: entry.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1246
    ^entry
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
    "Created: / 22-02-2008 / 08:44:05 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1249
    "Modified: / 22-02-2008 / 17:20:00 / janfrog"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1250
    "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
  1251
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1252
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1253
!NavigationState methodsFor:'printing & storing'!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1254
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1255
colorizeForModifiedBuffer:someString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1256
    ^ someString asText emphasisAllAdd:(UserPreferences current emphasisForModifiedBuffer)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1257
!
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
nameString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1260
    "a descriptive string of what this state shows"
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
    |s|
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
    s := self rawNameStringOrNil ? 'nothing selected'.
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
    (self realModifiedState == true) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1267
        ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1268
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1269
    ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1270
!
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
nameStringOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1273
    "a descriptive string of what this state shows"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1274
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1275
    |s "codeView"|
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
    s := self rawNameStringOrNil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1278
    s notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1279
        self realModifiedState == true 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1280
"/    ((codeView := self codeView) notNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1281
"/    and:[codeView modified]) 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1282
        ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1283
            ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1284
        ].
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1289
rawNameStringForCategory
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1290
    |categories theCategory|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1291
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1292
    categories := self selectedCategories value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1293
    categories size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1294
        theCategory := categories first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1295
        theCategory notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1296
            ^ theCategory string, ' [Category]'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1297
        ].
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
    ^ nil
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
    "Created: / 18.8.2000 / 19:42:42 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1302
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1303
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1304
rawNameStringForNameSpace
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1305
    |namespaces theNamespace nsName s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1306
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1307
    namespaces := self selectedNamespaces value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1308
    namespaces size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1309
        theNamespace := namespaces first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1310
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1311
    theNamespace notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1312
        theNamespace isNameSpace ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1313
            nsName := theNamespace name
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1314
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1315
            nsName := theNamespace
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1316
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1317
        s := nsName , ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1318
        (self isNameSpaceBrowser or:[self isNameSpaceFullBrowser]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1319
            ^ LabelAndIcon icon:(NewSystemBrowser nameSpaceIcon) string:s.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1320
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1321
        ^ s
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 / 20:15:02 / 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
rawNameStringForProject
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1329
    |projects theProject 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
    projects := self selectedProjects value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1332
    projects size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1333
        theProject := projects 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
    theProject notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1336
        s := theProject , ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1337
        (self isProjectBrowser or:[self isProjectFullBrowser]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1338
            ^ LabelAndIcon icon:(NewSystemBrowser packageIcon) string:s.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1339
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1340
        ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1341
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1342
    ^ nil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1343
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
    "Created: / 18.8.2000 / 20:18:34 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1345
!
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
rawNameStringOrNil
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
    "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
  1349
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1350
    ^ self rawNameStringOrNilWantShort:false
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1353
rawNameStringOrNilWantShort:shortName
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1354
    "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
  1355
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1356
    |lbl nr numClasses numMethods numCategories cats classes theClass   
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1357
     "protocols theProtocol" 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1358
     methods theSingleMethod projects theProject longName nm methodName suffix cls|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1359
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1360
    browserLabel notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1361
        "/ add the number of selected methods
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1362
        ((canvasType == #singleFullProtocolBrowserSpec)
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1363
        or:[canvasType == #methodListBrowserSpec]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1364
            nr := self selectedMethods value size.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1365
            nr > 5 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1366
                ^ browserLabel string , ' - ' , nr printString , ' methods'
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
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1369
        ^ browserLabel
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1372
    suffix := ''.
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 isProtocolOrFullProtocolBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1375
        lbl := self rawNameStringForProject.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1376
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1377
        suffix := ' [Protocol]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1378
    ].
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
    self isCategoryBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1381
        lbl := self rawNameStringForCategory.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1382
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1383
        suffix := ' [Category]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1384
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1385
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1386
    self isNameSpaceBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1387
        lbl := self rawNameStringForNameSpace.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1388
        lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1389
        suffix := ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1390
    ].
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
    self isProjectBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1393
        projects := self selectedProjects value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1394
        projects size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1395
            theProject := projects first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1396
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1397
        suffix := ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1398
        theProject notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1399
            ^ theProject , suffix
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1400
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1401
    ].
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
    classes := self selectedClasses value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1404
    classes size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1405
        theClass := classes first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1406
        theClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1407
            theClass := theClass theNonMetaclass
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1411
    self isClassBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1412
        suffix := ' [Class]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1413
        theClass notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1414
            ^ theClass name , suffix
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
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1417
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1418
"/    protocols := self selectedProtocols value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1419
"/    protocols size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1420
"/        theProtocol := protocols first
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1421
"/    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1422
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1423
    methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1424
    methods size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1425
        theSingleMethod := methods first
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1428
    theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1429
        methodName := theSingleMethod selector.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1430
        methodName isSymbol ifTrue:[methodName := methodName selector].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1431
        theSingleMethod isJavaMethod ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
            methodName := theSingleMethod printStringForBrowserWithSelector:methodName.
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1436
    self isMethodBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1437
        suffix := ' [Selector]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1438
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1439
        theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1440
            theSingleMethod mclass isNil ifTrue:[
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
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1443
            ^ theSingleMethod mclass name , ' ' , methodName , suffix
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1444
        ]
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
    self isCategoryBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1448
        suffix :=  ' [Category]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1449
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1450
        self isFullClassSourceBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1451
            suffix :=  ' [Full]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1452
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1453
            self isClassDocumentationBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1454
                suffix :=  ' [Doc]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1455
            ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1456
                self isProjectBrowser ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1457
                    suffix :=  ' [Project]'.
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
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1462
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1463
    nm := nil.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1464
    (numClasses := classes size) > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1465
        numClasses > 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1466
            methods size > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1467
                theSingleMethod notNil ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1468
                    cls := theSingleMethod mclass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1469
                    cls isNil ifTrue:[ 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1470
                        "/ oops - unbound
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1471
                        nm := '???'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1472
                    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1473
                        longName := nm := cls nameInBrowser.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1474
                        shortName ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1475
                            nm := cls nameWithoutPrefix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1476
                            cls isPrivate ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1477
                                nm := ':' , nm
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1478
                            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1479
                        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1480
                    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1481
                    nm := nm , ' ', (methodName ? '???')
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1482
                ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1483
                    nm := methods size printString , ' methods'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1484
                    numClasses := (methods collect:[:each | each mclass] as:IdentitySet) size.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1485
                    numClasses > 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1486
                        nm := nm , ' in ' , numClasses printString , ' classes'.
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
                ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1489
                ^ nm , suffix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1490
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1491
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1492
            nm := numClasses printString , ' classes in '.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1493
            "/ cats := self selectedCategories value
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1494
            cats := classes collect:[:each | each category] as:Set.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1495
            (numCategories := cats size) == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1496
                nm := nm , cats first
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
                nm := nm , numCategories printString , ' categories'
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1499
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1500
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1501
            cls := theClass theNonMetaclass.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1502
            longName := nm := cls nameInBrowser.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1503
            shortName ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1504
                nm := cls nameWithoutPrefix.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1505
                cls isPrivate ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1506
                    nm := ':' , nm
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1507
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1508
            ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1509
            methods := self selectedMethods value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1510
            (numMethods := methods size) > 0 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1511
                numMethods == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1512
                    theSingleMethod := methods first.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1513
                    nm := nm , ' ', (methodName ? '???')
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1514
                ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1515
                    nm := numMethods printString , ' methods in ' , nm
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
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1518
        ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1519
    ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1520
        (self isNameSpaceBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1521
        or:[self isNameSpaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1522
        or:[organizerMode value == OrganizerCanvas organizerModeNamespace]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1523
            lbl := self rawNameStringForNameSpace.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1524
            lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1525
            suffix := ' [NameSpace]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1526
        ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1527
            (self isProjectBrowser 
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1528
            or:[self isProjectFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1529
            or:[organizerMode value == OrganizerCanvas organizerModeProject]]) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1530
                lbl := self rawNameStringForProject.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1531
                lbl notNil ifTrue:[^ lbl].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1532
                suffix := ' [Project]'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1533
            ] ifFalse:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1534
                cats := self selectedCategories value.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1535
                cats size == 1 ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1536
                    nm := (cats first ? '') string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1537
                ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1538
            ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1539
        ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1540
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1541
    nm isNil ifTrue:[ ^ nil ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1542
    ^ nm , suffix.
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
    "Created: / 11-02-2000 / 13:32:16 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1545
    "Modified: / 18-08-2000 / 21:06:35 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1546
    "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
  1547
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1548
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1549
shortNameString
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1550
    "a descriptive string of what this state shows"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1551
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1552
    |s|
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1553
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1554
    s := (self rawNameStringOrNilWantShort:true) ? 'nothing selected'.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1555
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1556
    (self realModifiedState == true) ifTrue:[
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1557
        ^ self colorizeForModifiedBuffer:s string
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1558
    ].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1559
    ^ s
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1560
! !
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1561
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1562
!NavigationState methodsFor:'queries'!
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
isCategoryBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1565
    ^ canvasType == #categoryBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1566
      or:[ canvasType == #singleCategoryBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1567
      or:[ canvasType == #multipleCategoryBrowserSpec ]]
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
    "Modified: / 25.2.2000 / 01:17:02 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1570
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1571
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1572
isChainBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1573
    ^ canvasType == #chainBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1574
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1575
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1576
isCheckOutputBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1577
    ^ canvasType == #multipleClassWithInfoAndMethodWithInfoBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1578
      or:[canvasType == #multipleMethodWithInfoBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1579
      or:[canvasType == #multipleClassWithInfoBrowserSpec]]
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1582
isClassBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1583
    ^ canvasType == #classBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1584
      or:[ canvasType == #singleClassBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1585
      or:[ canvasType == #multipleClassBrowserSpec ]]
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
    "Modified: / 25.2.2000 / 00:38:07 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1590
isClassDocumentationBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1591
    ^ canvasType == #classDocumentationBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1592
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1593
    "Created: / 24.2.2000 / 14:54:40 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1594
!
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
isClassExtensionBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1597
    ^ canvasType == #multipleClassExtensionBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1598
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1599
    "Created: / 24.2.2000 / 14:54:40 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1602
isFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1603
    ^ canvasType == #fullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1604
!
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
isFullClassSourceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1607
    ^ canvasType == #fullClassSourceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1608
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1609
    "Created: / 24.2.2000 / 14:54:40 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1610
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1611
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1612
isFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1613
    ^ canvasType == #singleFullProtocolBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1614
      or:[ canvasType == #multipleFullProtocolBrowserSpec ]
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
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1617
    "Modified: / 25.2.2000 / 03:11:00 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1620
isLintResultBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1621
    ^ canvasType == #smallLintByRuleResultBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1622
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1623
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1624
isMethodBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1625
    ^ canvasType == #methodListBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1626
      or:[ canvasType == #singleMethodBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1627
      or:[ canvasType == #multipleMethodBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1628
      or:[ canvasType == #multipleMethodWithInfoBrowserSpec ]]]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1629
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1630
    "Modified: / 1.3.2000 / 13:35:12 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1633
isMethodListBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1634
    canvasType == #methodListBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1635
    canvasType == #multipleMethodBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1636
    canvasType == #singleProtocolBrowserSpec ifTrue:[^ true].
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1637
    ^ false.
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1638
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1639
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1640
isNameSpaceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1641
    ^ canvasType == #singleNameSpaceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1642
      or:[ canvasType == #multipleNameSpaceBrowserSpec]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1643
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1644
    "Modified: / 18.8.2000 / 16:12:34 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1647
isNameSpaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1648
    ^ canvasType == #singleNameSpaceFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1649
      or:[ canvasType == #multipleNameSpaceFullBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1650
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1651
    "Created: / 18.8.2000 / 14:58:36 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1652
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1653
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1654
isProjectBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1655
    ^ canvasType == #singleProjectBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1656
      or:[ canvasType == #multipleProjectBrowserSpec ]
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
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1659
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1660
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1661
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1662
isProjectFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1663
    ^ canvasType == #singleProjectFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1664
      or:[ canvasType == #multipleProjectFullBrowserSpec ]
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
    "Created: / 18.8.2000 / 19:02:49 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1667
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1668
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1669
isProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1670
    ^ canvasType == #singleProtocolBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1671
      or:[ canvasType == #multipleProtocolBrowserSpec ]
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
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1674
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1675
!
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
isProtocolOrFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1678
    ^ self isProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1679
      or:[ self isFullProtocolBrowser ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1680
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1681
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1682
isSingleCategoryBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1683
    ^ canvasType == #singleCategoryBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1684
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1685
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1686
isSingleClassBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1687
    ^ canvasType == #singleClassBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1688
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1689
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1690
isSingleFullProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1691
    ^ canvasType == #singleFullProtocolBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1692
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1693
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1694
isSingleMethodBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1695
    ^ canvasType == #singleMethodBrowserSpec
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
    "Created: / 1.3.2000 / 13:35:52 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1698
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1699
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1700
isSingleNamespaceBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1701
    ^ canvasType == #singleNameSpaceBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1702
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1703
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1704
isSingleNamespaceFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1705
    ^ canvasType == #singleNameSpaceFullBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1706
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1707
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1708
isSingleProjectBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1709
    ^ canvasType == #singleProjectBrowserSpec
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1710
      or:[ canvasType == #singleProjectFullBrowserSpec ]
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1711
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1712
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1713
    "Modified: / 25.2.2000 / 03:11:00 / cg"
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1716
isSingleProjectFullBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1717
    ^ canvasType == #singleProjectFullBrowserSpec
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
    "Created: / 24.2.2000 / 21:32:09 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1720
    "Modified: / 25.2.2000 / 03:11:00 / cg"
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1721
!
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
isSingleProtocolBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1724
    ^ canvasType == #singleProtocolBrowserSpec    
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1725
!
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
isVersionDiffBrowser
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1728
    ^ canvasType == #multipleClassRepositoryDiffBrowserSpec
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
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1731
!NavigationState class methodsFor:'documentation'!
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
version
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1734
    ^ '$Header: /cvs/stx/stx/libtool/Tools__NavigationState.st,v 1.57 2014-12-02 21:08:21 cg Exp $'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1735
!
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
version_CVS
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1738
    ^ '$Header: /cvs/stx/stx/libtool/Tools__NavigationState.st,v 1.57 2014-12-02 21:08:21 cg Exp $'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1739
!
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1740
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1741
version_SVN
14969
a77496b91db7 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents: 14160
diff changeset
  1742
    ^ '$Id: Tools__NavigationState.st,v 1.57 2014-12-02 21:08:21 cg Exp $'
14138
083a6059a351 class: Tools::NavigationState
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1743
! !
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
NavigationState initialize!