extensions.st
author Jan Vrany <jan.vrany@labware.com>
Thu, 01 Jun 2023 20:20:33 +0100
changeset 1149 33f8a8571e92
parent 1145 a79c30ec56ec
permissions -rw-r--r--
Fix class selection drop-in dialog Commit 93164087c56a added class selection dialog to SmallSense's `DialogBox`. This commit selever bugs in the implementation.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
     1
"{ Package: 'stx:goodies/smallsense' }"!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
!AssignmentNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
    aBlock value: #variable   value: variable.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
    aBlock value: #expression value: expression.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
    "Modified: / 26-11-2011 / 10:39:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    12
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!AssignmentNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
inferedType
452
759d04e8d40d Fix in AssignmentNode>>inferredType: care for incomplete assignment node
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 444
diff changeset
    16
    expression isNil ifTrue:[ 
759d04e8d40d Fix in AssignmentNode>>inferredType: care for incomplete assignment node
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 444
diff changeset
    17
        ^ SmallSense::Type unknown
759d04e8d40d Fix in AssignmentNode>>inferredType: care for incomplete assignment node
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 444
diff changeset
    18
    ].
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    ^ expression inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
    "Created: / 26-11-2011 / 12:38:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
452
759d04e8d40d Fix in AssignmentNode>>inferredType: care for incomplete assignment node
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 444
diff changeset
    22
    "Modified: / 23-04-2015 / 17:16:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    24
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
!AssignmentNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
    ^ self shouldNotImplement
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
    "Created: / 26-11-2011 / 12:37:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    33
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    34
!BlockNode methodsFor:'enumeration'!
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    35
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    36
childNamesAndValuesDo:aBlock
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    37
    "Enumerates all direct children and evaluates a block
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    38
     with its name (usually instVar name) and the node itself"
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    39
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    40
    aBlock value:'statements' value: statements
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    41
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    42
    "Created: / 20-09-2013 / 01:03:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    43
! !
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
    44
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    45
!ConfigurableFeatures class methodsFor:'queries-features'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    46
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    47
hasSmallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    48
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    49
    ^UserPreferences current smallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    50
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    51
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    52
    "
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    53
     ConfigurableFeatures hasSmallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    54
     ConfigurableFeatures includesFeature:'SmallSenseEnabled'
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    55
    "
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    56
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    57
    "Created: / 27-11-2011 / 17:22:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    58
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    59
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    60
!DebugView methodsFor:'event handling'!
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    61
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    62
processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    63
    "a shortcut key event as forwarded from the keyboardProcessor - if there is the
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    64
     shortcut key defined, process the shortcut and return true - otherwise false."
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    65
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    66
    UserPreferences current smallSenseEnabled ifTrue:[   
1027
13a835555b48 Keyboard mapping: code updated to catch up with `KeyboardMap`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 983
diff changeset
    67
        (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasMappingFor:#OpenNavigator) not]]) ifTrue:[ 
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    68
            SmallSense::Navigator open.                                                                      
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    69
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    70
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    71
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    72
    ^ super processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    73
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    74
    "Created: / 25-01-2015 / 12:18:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    75
    "Modified: / 11-02-2015 / 21:34:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    76
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    77
137
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    78
!EditTextView methodsFor:'accessing-behavior'!
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    79
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    80
autoIndent
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    81
    ^ autoIndent
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    82
! !
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
    83
279
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    84
!EditTextViewCompletionSupport methodsFor:'queries'!
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    85
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    86
isCompletionViewShown
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    87
    ^ completionView notNil and:[ completionView isVisible ]
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    88
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    89
    "Created: / 13-08-2014 / 16:00:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    90
! !
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
    91
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    92
!HTMLDocumentView methodsFor:'actions'!
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    93
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    94
doQuickFix: quickFixNo
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    95
    | app |
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    96
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    97
    app := self application.
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    98
    app notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
    99
	app doQuickFix: quickFixNo
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   100
    ].
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   101
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   102
    "Created: / 16-02-2012 / 14:18:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   103
! !
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   104
395
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   105
!InspectorView methodsFor:'initialization & release'!
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   106
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   107
preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   108
    "/ This method is an ugly hack to hook-in a a SmallSense completer.
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   109
    "/ Things fall apart if somebody later defined preRealize on
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   110
    "/ InspectorView...
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   111
    UserPreferences current smallSenseCompletionEnabled ifTrue:[ 
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   112
        | completion support |
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   113
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   114
        support := SmallSense::EditSupport forLanguage: object class programmingLanguage.
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   115
        support initializeForTextView: workspace.  
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   116
        completion := SmallSense::CompletionController for: workspace. 
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   117
        completion support: support.
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   118
        workspace completionSupport: completion.  
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   119
    ].
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   120
    super preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   121
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   122
    "Modified: / 12-02-2015 / 00:20:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   123
! !
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   124
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
!MessageNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
    aBlock value: #receiver value: receiver.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    argArray notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   131
	argArray withIndexDo:[:node :idx|
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   132
	    aBlock value: 'arg[' , idx printString , ']' value: node
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   133
	]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
    ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
    "Modified: / 26-11-2011 / 12:10:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   138
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   139
!MessageNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   140
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   141
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   142
    navigator navigateToMessageNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   143
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   144
    "Created: / 24-09-2013 / 10:04:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   145
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   146
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   147
!Method methodsFor:'inspecting'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   148
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   149
inspector2TabRBParseTreeInspector
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   150
    <inspector2Tab>
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   151
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   152
    ^ (self newInspector2Tab)
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   153
        label:'Parse Tree (RB)';
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   154
        priority:35;
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   155
        application:
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   156
                [
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   157
                    | src node |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   158
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   159
                    src := self source.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   160
                    node := RBParser parseMethod: src.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   161
                    SmallSense::ParseTreeInspector new node:node source:src.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   162
                ];
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   163
        yourself
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   164
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   165
    "Created: / 15-10-2014 / 02:37:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   166
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   167
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   168
!Method methodsFor:'inspecting'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   169
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   170
inspector2TabSTXParseTreeInspector
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   171
    <inspector2Tab>
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   172
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   173
    ^ (self newInspector2Tab)
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   174
        label:'Parse Tree (ST/X)';
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   175
        priority:36;
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   176
        application:
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   177
                [
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   178
                    | src parser |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   179
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   180
                    src := self source.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   181
                    parser := self parserClass parseMethod: src.
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   182
                    SmallSense::ParseTreeInspector new node:parser tree source:src.
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   183
                ];
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   184
        yourself
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   185
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   186
    "Created: / 15-10-2014 / 11:23:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   187
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   188
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
!ParseErrorNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
    "superclass ParseNode says that I am responsible to implement this method"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   194
    ^ children withIndexDo:[:child :index |
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   195
        aBlock value:'child[' , index printString , ']' value: child
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   196
    ]
60
0daf99c34c5e Initial support for syntax-error tolerant parsing of Smalltalk.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 51
diff changeset
   197
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   198
    "Modified: / 20-09-2013 / 01:00:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   200
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
!ParseNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   203
childNamesAndValuesDo:aBlock
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
    "Enumerates all direct children and evaluates a block
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
     with its name (usually instVar name) and the node itself"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   207
    self class allInstVarNames withIndexDo:[:n :i|
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   208
        | v |
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   209
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   210
        v := self instVarAt: i.
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   211
        (v isKindOf: ParseNode) ifTrue:[
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   212
            aBlock value: n value: v
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   213
        ] ifFalse:[
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   214
            (v isSequenceable) ifTrue:[
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   215
                v withIndexDo:[ :v2 :i2|
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   216
                    (v2 isKindOf: ParseNode) ifTrue:[
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   217
                        aBlock value: (n, '[' , i2 printString , ']') value: v2.
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   218
                    ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   219
                ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   220
            ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   221
        ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   222
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
    "Created: / 26-11-2011 / 10:38:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   225
    "Modified: / 19-09-2013 / 18:18:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   227
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
    | t |
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
    t := self objectAttributeAt:#inferedType.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   234
    t isNil ifTrue:[t := SmallSense::Type unknown].
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
    ^t
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
    "Created: / 26-11-2011 / 12:38:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   238
    "Modified: / 24-08-2013 / 20:46:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   240
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
    ^ self objectAttributeAt:#inferedType put: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
    "Created: / 26-11-2011 / 12:37:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   249
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   250
!ParseNode methodsFor:'inspecting'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   251
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   252
inspector2TabSTXParseTreeInspector
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   253
    <inspector2Tab>
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   254
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   255
    ^ (self newInspector2Tab)
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   256
        label:'Parse Tree (ST/X)';
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   257
        priority:36;
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   258
        application:
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   259
                [
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   260
                    SmallSense::ParseTreeInspector new node:self source:nil.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   261
                ];
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   262
        yourself
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   263
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   264
    "Created: / 15-10-2014 / 11:23:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   265
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   266
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
!ParseNode methodsFor:'testing'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
isSelector
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
    "return true, if this is a node for an selctors"
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   271
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
    ^ false
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
    "Created: / 22-02-2011 / 21:44:45 / Jakub <zelenja7@fel.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   276
102
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   277
!ParseNode methodsFor:'navigation-SmallSense'!
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   278
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   279
navigateToUsing:navigator
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   280
    "Nothing by default, to overwritten by subclasses"
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   281
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   282
    "Modified: / 24-09-2013 / 10:05:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   283
! !
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   284
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   285
!Parser methodsFor:'inspecting'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   286
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   287
inspector2TabSTXParseTreeInspector
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   288
    <inspector2Tab>
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   289
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   290
    ^ (self newInspector2Tab)
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   291
        label:'Parse Tree (ST/X)';
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   292
        priority:36;
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   293
        application:
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   294
                [
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   295
                    | src parser |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   296
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   297
                    source isExternalStream ifFalse:[ 
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   298
                        src := source collection 
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   299
                    ].
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   300
                    SmallSense::ParseTreeInspector new node:tree source:src.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   301
                ];
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   302
        yourself
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   303
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   304
    "Created: / 15-10-2014 / 11:23:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   305
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   306
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
!PrimaryNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
    "Initionally left blank, primary nodes have no children"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
    "Modified: / 26-11-2011 / 11:49:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   315
150
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   316
!PrimitiveNode methodsFor:'accessing-SmallSense'!
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   317
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   318
inferedType
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   319
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   320
    ^ SmallSense::Type withClass: UndefinedObject "/ Not really true, should be 'void'
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   321
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   322
    "Created: / 08-12-2013 / 22:25:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   323
! !
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   324
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   325
!RBBlockNode methodsFor:'enumeration'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   326
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   327
childNamesAndValuesDo:aBlock
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   328
    arguments withIndexDo:[:statement :index |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   329
        aBlock value: 'argument[', index printString ,']' value: statement
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   330
    ].
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   331
    body statements withIndexDo:[:statement :index |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   332
        aBlock value: 'statement[', index printString ,']' value: statement
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   333
    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   334
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   335
    "Created: / 15-10-2014 / 10:42:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   336
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   337
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   338
!RBContainsSmalltalkXEOLCommentRule methodsFor:'accessing'!
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   339
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   340
fixes: fixer
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   341
    | changes |
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   342
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   343
    changes := self changes.
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   344
    changes notEmptyOrNil ifTrue:[
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   345
        fixer fix
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   346
            rule: self;
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   347
            label:'Change EOL comments to standard Smalltalk comments';
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   348
            action: [ fixer apply:
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   349
                ((ChangeSet withAll:changes) name: self name)
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   350
            ].
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   351
    ]
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   352
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   353
    "Created: / 01-02-2012 / 12:11:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   354
    "Modified: / 15-12-2014 / 16:46:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   355
! !
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   356
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   357
!RBLintRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   358
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   359
fixes: aSmallSenseQuickFixer
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   360
    "Adds all possible code fixes to given quick fixer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   361
     Default is to do nothing, meaning that there are
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   362
     no quickfixes available"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   363
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   364
    "Created: / 01-02-2012 / 12:09:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   365
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   366
895
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   367
!RBMethod methodsFor:'inspecting'!
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   368
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   369
inspector2TabRBParseTreeInspector
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   370
    <inspector2Tab>
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   371
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   372
    ^ (self newInspector2Tab)
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   373
        label:'Parse Tree (RB)';
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   374
        priority:35;
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   375
        application:
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   376
                [
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   377
                    SmallSense::ParseTreeInspector new node:self source: self source.
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   378
                ];
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   379
        yourself
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   380
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   381
    "Created: / 26-10-2015 / 11:25:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   382
! !
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   383
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   384
!RBMethodNode methodsFor:'enumeration'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   385
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   386
childNamesAndValuesDo:aBlock
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   387
    arguments withIndexDo:[:statement :index |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   388
        aBlock value: 'argument[', index printString ,']' value: statement
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   389
    ].
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   390
    body statements withIndexDo:[:statement :index |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   391
        aBlock value: 'statement[', index printString ,']' value: statement
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   392
    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   393
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   394
    "Created: / 15-10-2014 / 09:28:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   395
    "Modified: / 15-10-2014 / 10:41:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   396
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   397
895
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   398
!RBMethodNode methodsFor:'inspecting'!
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   399
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   400
inspector2TabRBParseTreeInspector
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   401
    <inspector2Tab>
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   402
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   403
    ^ (self newInspector2Tab)
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   404
        label:'Parse Tree (RB)';
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   405
        priority:35;
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   406
        application:
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   407
                [
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   408
                    SmallSense::ParseTreeInspector new node:self source:self source.
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   409
                ];
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   410
        yourself
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   411
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   412
    "Created: / 26-10-2015 / 11:26:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   413
! !
b3aea8e7474c Changed parse tree inspector to show source / node inspector in splitted pane
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 891
diff changeset
   414
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   415
!RBProgramNode methodsFor:'enumeration'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   416
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   417
childNamesAndValuesDo:aBlock
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   418
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   419
    "Enumerates all direct children and evaluates a block
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   420
     with its name (usually instVar name) and the node itself"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   421
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   422
    self class allInstVarNames withIndexDo:[:n :i|
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   423
        | v |
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   424
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   425
        n ~~ #parent ifTrue:[
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   426
            v := self instVarAt: i.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   427
            (v isKindOf: RBProgramNode) ifTrue:[
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   428
                aBlock value: n value: v
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   429
            ] ifFalse:[
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   430
                (v isSequenceable) ifTrue:[
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   431
                    v withIndexDo:[ :v2 :i2|
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   432
                        (v2 isKindOf: RBProgramNode) ifTrue:[
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   433
                            aBlock value: (n, '[' , i2 printString , ']') value: v2.
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   434
                        ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   435
                    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   436
                ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   437
            ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   438
        ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   439
    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   440
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   441
    "Created: / 15-10-2014 / 10:39:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   442
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   443
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   444
!RBProgramNode methodsFor:'accessing'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   445
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   446
endPosition
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   447
    ^ self stop
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   448
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   449
    "Created: / 15-10-2014 / 09:34:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   450
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   451
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   452
!RBProgramNode methodsFor:'accessing'!
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   453
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   454
startPosition
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   455
    ^ self start
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   456
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   457
    "Created: / 15-10-2014 / 09:34:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   458
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   459
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   460
!RBTransformationRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   461
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   462
fixes: fixer
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   463
    | changes |
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   464
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   465
    changes := self changes.
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   466
    changes notEmptyOrNil ifTrue:[
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   467
        fixer fix
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   468
            rule: self;    
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   469
            label:'Rewrite the code';
891
e6d1d6d1db61 class: RBTransformationRule
Claus Gittinger <cg@exept.de>
parents: 885
diff changeset
   470
            action: [ 
e6d1d6d1db61 class: RBTransformationRule
Claus Gittinger <cg@exept.de>
parents: 885
diff changeset
   471
                fixer apply: ((ChangeSet withAll:self changes) name: self name)
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   472
            ].
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   473
    ]
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   474
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   475
    "Created: / 01-02-2012 / 12:11:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 311
diff changeset
   476
    "Modified: / 15-12-2014 / 16:46:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   477
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   478
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   479
!ReturnNode methodsFor:'enumeration'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   480
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   481
childNamesAndValuesDo:aBlock
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   482
    aBlock value: 'expression' value: expression.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   483
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   484
    "Created: / 10-04-2014 / 08:15:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   485
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   486
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
!StatementNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
childNamesAndValuesDo:aBlock
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   490
    | stmt index |
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   491
    stmt := self.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   492
    index := 1.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   493
    [ stmt notNil ] whileTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   494
        | expr |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   495
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   496
        stmt isReturnNode ifTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   497
            expr := stmt.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   498
        ] ifFalse:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   499
            expr := stmt expression.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   500
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   501
        aBlock value: ('statement[%1]' bindWith: index) value: expr.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   502
        stmt := stmt nextStatement.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   503
        index := index + 1.
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   504
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   506
    "Modified: / 10-04-2014 / 08:13:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   508
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   509
!StatementNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
    ^ expression inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
    "Created: / 26-11-2011 / 12:38:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   517
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518
!StatementNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   519
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   521
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
    ^ self shouldNotImplement
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
    "Created: / 26-11-2011 / 12:37:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   526
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   527
!Tools::CodeCompletionService class methodsFor:'instance creation'!
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   528
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   529
new
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   530
    "return an initialized instance"
75
2046f40e5dde Fixes to make SmallSense code completion working on eXept CVS version (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   531
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   532
    ^ (SmallSense::EditService ? self) basicNew initialize.
75
2046f40e5dde Fixes to make SmallSense code completion working on eXept CVS version (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   533
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   534
    "Created: / 27-07-2013 / 22:47:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   535
    "Modified: / 28-11-2014 / 15:40:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
75
2046f40e5dde Fixes to make SmallSense code completion working on eXept CVS version (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   536
! !
2046f40e5dde Fixes to make SmallSense code completion working on eXept CVS version (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   537
42
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   538
!Tools::CodeHighlightingService class methodsFor:'instance creation'!
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   539
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   540
new
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   541
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   542
885
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   543
    |serviceUsed|
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   544
    
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   545
    "/ cg: what an ugly hack; @Jan, why this
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   546
    "/ ^ (SmallSense::CodeHighlightingService ? self) basicNew initialize.
42
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   547
885
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   548
    "/ cg: at least allow subclassing
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   549
    serviceUsed := self.
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   550
    self == Tools::CodeHighlightingService ifTrue:[
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   551
        serviceUsed := (SmallSense::CodeHighlightingService ? self).
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   552
    ].
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   553
    ^ serviceUsed basicNew initialize
46623318ae3b class: Tools::CodeHighlightingService
Claus Gittinger <cg@exept.de>
parents: 881
diff changeset
   554
    
42
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   555
    "Created: / 27-07-2013 / 22:47:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   556
    "Modified: / 23-09-2013 / 14:32:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   557
! !
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   558
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   559
!Tools::CodeNavigationService class methodsFor:'instance creation'!
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   560
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   561
new
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   562
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   563
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   564
    ^ (SmallSense::CodeNavigationService ? self) basicNew initialize.
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   565
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   566
    "Created: / 27-07-2013 / 22:47:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   567
    "Modified: / 23-09-2013 / 14:32:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
42
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   568
! !
48307f46ff8e Edit support cut off to a new service. Added SmallSense syntax highlighting service.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   569
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   570
!Tools::Inspector2 methodsFor:'event handling'!
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   571
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   572
processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   573
    "a shortcut key event as forwarded from the keyboardProcessor - if there is the
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   574
     shortcut key defined, process the shortcut and return true - otherwise false."
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   575
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   576
    UserPreferences current smallSenseEnabled ifTrue:[   
1027
13a835555b48 Keyboard mapping: code updated to catch up with `KeyboardMap`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 983
diff changeset
   577
        (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasMappingFor:#OpenNavigator) not]]) ifTrue:[ 
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   578
            SmallSense::Navigator open.
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   579
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   580
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   581
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   582
    ^ super processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   583
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   584
    "Created: / 25-01-2015 / 12:18:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   585
    "Modified: / 11-02-2015 / 21:34:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   586
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   587
311
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   588
!Tools::LintService methodsFor:'event handling'!
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   589
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   590
buttonPress:button x:x y:y in:view 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   591
    |lineNr|
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   592
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   593
    view == gutterView ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   594
        button == 1 ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   595
            lineNr := textView yVisibleToLineNr:y.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   596
            lineNr notNil ifTrue:[ 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   597
                ^ self showInfoWindowForLine: lineNr 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   598
            ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   599
            ^ false.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   600
        ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   601
    ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   602
    ^ false
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   603
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   604
    "Created: / 30-01-2012 / 21:04:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   605
    "Modified: / 03-12-2014 / 10:01:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   606
! !
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   607
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   608
!Tools::LintService methodsFor:'private'!
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   609
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   610
showInfoWindowForLine: lineNo
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   611
    | ann |
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   612
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   613
    ann := self annotationAtLine: lineNo.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   614
    ann isNil ifTrue:[ ^ false ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   615
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   616
    SmallSense::CriticsWindow new
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   617
        rule: ann rule;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   618
        codeView: codeView;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   619
        allButOpen;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   620
        openWindowAt: (Screen current pointerPosition - (20@20)).
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   621
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   622
    ^true
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   623
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   624
    "Created: / 30-01-2012 / 21:04:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   625
    "Modified: / 03-12-2014 / 10:00:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   626
! !
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   627
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   628
!Tools::NavigationState methodsFor:'aspects - SmallSense'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   629
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   630
stx_goodies_smallsense_selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   631
    <swizzle: #selectedClasses>
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   632
    selectedClasses isNil ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   633
        selectedClasses := nil asValue.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   634
        (ConfigurableFeatures includesFeature:'SmallSenseEnabled') ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   635
            selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   636
                onChangeEvaluate:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   637
                    selectedClasses value ? #() do:[:cls |
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   638
                        (Smalltalk at:#'SmallSense::Manager') instance updateInfoForClass:cls.
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   639
                    ].
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   640
                ]
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   641
        ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   642
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   643
    ^ selectedClasses
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   644
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   645
    "Created: / 24-08-2013 / 21:53:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   646
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   647
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   648
!Tools::NewSystemBrowser methodsFor:'user actions-events'!
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   649
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   650
processShortcut: aKeyPressEvent
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   651
    UserPreferences current smallSenseEnabled ifTrue:[
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   652
        aKeyPressEvent isKeyPressEvent ifTrue:[
1027
13a835555b48 Keyboard mapping: code updated to catch up with `KeyboardMap`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 983
diff changeset
   653
            (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasMappingFor:#OpenNavigator) not]]) ifTrue:[ 
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   654
                self searchMenuOpenNavigatorOnDeclarations.
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   655
                ^ true
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   656
            ].
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   657
        ].
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   658
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   659
    ^ super processShortcut: aKeyPressEvent
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   660
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   661
    "Created: / 01-02-2015 / 07:22:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   662
    "Modified: / 11-02-2015 / 21:34:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   663
! !
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   664
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   665
!Tools::NewSystemBrowser methodsFor:'private-searching-smallsense'!
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   666
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   667
searchCompletionBlock_SmallSense
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   668
    "This returns a class/selector name completion block that uses
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   669
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   670
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   671
    ^ [:patternString | self smallSenseSearchCompletion:patternString ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   672
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   673
    "Created: / 25-11-2013 / 12:27:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   674
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   675
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   676
!Tools::NewSystemBrowser methodsFor:'menu actions-searching-SmallSense'!
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   677
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   678
searchMenuOpenNavigatorOnDeclarations
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   679
    "Open a SmallSense navigator on definitions (i.e.,
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   680
     navugating to a class or or method implementor)"
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   681
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   682
    | result |    
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   683
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   684
    result := SmallSense::Navigator new open.
391
58d61fda2ca2 Navigator: made navigator always open a new tab in a browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 383
diff changeset
   685
    result isBehavior ifTrue:[
58d61fda2ca2 Navigator: made navigator always open a new tab in a browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 383
diff changeset
   686
        self createBuffer.
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   687
        self switchToClass: result.
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   688
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   689
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   690
    result isMethod ifTrue:[ 
391
58d61fda2ca2 Navigator: made navigator always open a new tab in a browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 383
diff changeset
   691
        self createBuffer.
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   692
        self switchToClass: result mclass selector: result selector.
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   693
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   694
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   695
    result isCollection ifTrue:[ 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   696
        (result allSatisfy:[:e|e isMethod]) ifTrue:[ 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   697
            self  spawnMethodBrowserForSearch:[ result ] 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   698
                  sortBy:#class 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   699
                  in:#newBuffer 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   700
                  label:(resources string: 'Implementors of %1' with: result anElement selector storeString)
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   701
        ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   702
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   703
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   704
    ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   705
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   706
    "Created: / 23-01-2015 / 20:31:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
391
58d61fda2ca2 Navigator: made navigator always open a new tab in a browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 383
diff changeset
   707
    "Modified: / 08-02-2015 / 08:21:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   708
! !
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   709
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   710
!Tools::NewSystemBrowser methodsFor:'private-searching-smallsense'!
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   711
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   712
smallSenseSearchCompletion:patternString
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   713
    "/sorry, no method search yet"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   714
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   715
    ^ self smallSenseSearchCompletionNewForClass:patternString
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   716
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   717
    "Modified: / 04-08-2011 / 19:05:28 / cg"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   718
    "Created: / 04-12-2011 / 22:22:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   719
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   720
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   721
!Tools::NewSystemBrowser methodsFor:'private-searching-smallsense'!
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   722
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   723
smallSenseSearchCompletionBlock
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   724
    "This returns a class/selector name completion block that uses
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   725
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   726
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   727
    ^ [:patternString | self smallSenseSearchCompletion:patternString ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   728
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   729
    "Modified: / 04-08-2011 / 19:05:28 / cg"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   730
    "Created: / 04-12-2011 / 22:13:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   731
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   732
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   733
!Tools::NewSystemBrowser methodsFor:'private-searching-smallsense'!
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   734
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   735
smallSenseSearchCompletionEntryForClass:aClass showPrefix:showPrefix
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   736
    ^ (SmallSense::ClassPO new)
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   737
        klass:aClass;
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   738
        showPrefix:showPrefix.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   739
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   740
    "Created: / 06-04-2012 / 12:55:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   741
    "Modified: / 25-11-2013 / 12:16:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   742
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   743
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   744
!Tools::NewSystemBrowser methodsFor:'private-searching-smallsense'!
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   745
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   746
smallSenseSearchCompletionNewForClass:patternString
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   747
    | env  pattern  matcher  matches  relax  withPrefix |
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   748
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   749
    patternString isEmptyOrNil ifTrue:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   750
        ^ #( '' #() )
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   751
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   752
    env := self theSingleSelectedNamespace ? #Smalltalk.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   753
    env = NavigatorModel nameListEntryForALL ifTrue:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   754
        env := #Smalltalk
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   755
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   756
    env := Smalltalk at:env.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   757
    withPrefix := patternString includes:$:.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   758
    pattern := StringPattern readFrom:patternString onError:[ ^ #( '' #() ) ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   759
    withPrefix ifTrue:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   760
        matcher := [:cls | pattern match:cls name ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   761
    ] ifFalse:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   762
        matcher := [:cls | pattern match:cls nameWithoutPrefix ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   763
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   764
    relax := 1.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   765
    [
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   766
        matches isEmptyOrNil and:[ relax <= 3 ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   767
    ] whileTrue:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   768
        matches := OrderedCollection new.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   769
        env
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   770
            keysDo:[:nm |
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   771
                | cls |
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   772
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   773
                cls := env at:nm.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   774
                (cls notNil and:[ cls isBehavior and:[ (matches includesIdentical:cls) not ] ])
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   775
                        ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   776
                            "cls isJavaClass"false ifTrue:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   777
                                cls isAnonymous ifFalse:[
270
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   778
                                    (matcher value:cls) ifTrue:[
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   779
                                        matches add:cls
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   780
                                    ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   781
                                ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   782
                            ] ifFalse:[
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   783
                                (matcher value:cls) ifTrue:[
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   784
                                    matches add:cls
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   785
                                ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   786
                            ]
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   787
                        ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   788
            ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   789
        relax := relax + 1.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   790
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   791
    matches isEmpty ifTrue:[
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   792
        ^ #( nil #() )
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   793
    ] ifFalse:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   794
        matches := matches
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   795
                collect:[:cls |
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   796
                    self smallSenseSearchCompletionEntryForClass:cls showPrefix:withPrefix
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   797
                ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   798
        ^ {
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   799
            matches first.
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   800
            matches
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   801
        }
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   802
    ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   803
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   804
    "Created: / 06-04-2012 / 12:56:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
270
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   805
    "Modified: / 07-08-2014 / 13:10:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
147
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   806
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   807
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   808
!Tools::NewSystemBrowser methodsFor:'private-dialogs-SmallSense'!
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   809
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   810
stx_goodies_smallsense_askForMethodCategory:question title:boxTitle okLabel:okLabel list:someCategories recentList:recentListOrNil initialAnswer:initialText
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   811
    "convenient helper method: setup a box asking for a method category"
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   812
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   813
    <swizzle: #askForMethodCategory:title:okLabel:list:recentList:initialAnswer:>
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   814
1145
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   815
    | dialog classes |
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   816
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   817
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   818
        ^ self stx_libtool_askForMethodCategory:question title:boxTitle okLabel:okLabel list:someCategories recentList:recentListOrNil initialAnswer:initialText     
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   819
    ].
1145
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   820
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   821
    classes := self selectedClasses value.
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   822
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   823
    dialog := SmallSense::ProtocolSelectDialog new.   
380
1833a3046a92 Fix in new protocol dialog opened from browser: use supplied labels rather than generic "OK"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 378
diff changeset
   824
    dialog title: (resources string: question).
1833a3046a92 Fix in new protocol dialog opened from browser: use supplied labels rather than generic "OK"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 378
diff changeset
   825
    dialog addButtonCancel.   
1833a3046a92 Fix in new protocol dialog opened from browser: use supplied labels rather than generic "OK"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 378
diff changeset
   826
    dialog addButtonAcceptWithLabel: (resources string: okLabel).  
1145
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   827
    classes notNil ifTrue:[
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   828
        dialog protocolsToHighlight: (Iterator on:[ :whatToDo |
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   829
            classes do:[:each | 
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   830
                each withAllSuperclassesDo:[ :cls |
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   831
                    cls methodDictionary do:[:method | 
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   832
                        whatToDo value: method category.
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   833
                    ]
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   834
                ].
983
7379ac82aade Highlight protocols already defined in a class or superclasses
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 947
diff changeset
   835
            ].
1145
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   836
        ]).
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   837
    ].
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   838
    initialText notNil ifTrue:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   839
        dialog pattern: initialText.
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   840
        dialog selection: initialText. 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   841
    ].
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   842
    ^ dialog open
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   843
    "
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   844
    stx_goodies_smallsense swizzle: (Tools::NewSystemBrowser >> #stx_goodies_smallsense_askForMethodCategory:title:okLabel:list:recentList:initialAnswer:)
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   845
    "
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   846
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   847
    "Created: / 09-01-2015 / 10:44:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
983
7379ac82aade Highlight protocols already defined in a class or superclasses
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 947
diff changeset
   848
    "Modified: / 17-08-2016 / 16:01:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1145
a79c30ec56ec Fix `#askForMethodCategory:title:...` to work in sender / implementors browser too
Jan Vrany <jan.vrany@labware.com>
parents: 1143
diff changeset
   849
    "Modified: / 01-09-2022 / 21:24:29 / Jan Vrany <jan.vrany@labware.com>"
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   850
! !
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   851
881
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   852
!Tools::NewSystemBrowser methodsFor:'menu actions-category-SmallSense'!
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   853
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   854
stx_goodies_smallsense_categoryMenuRename
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   855
    |categoriesToRename allCategories newCategory box
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   856
     cancelAll guess combosList change numClasses|
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   857
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   858
    <swizzle: #categoryMenuRename>
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   859
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   860
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   861
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   862
        ^ self stx_libtool_categoryMenuRename
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   863
    ]. 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   864
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   865
    self canUseRefactoringSupport ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   866
        change := CompositeRefactoryChange named:'Rename categories'.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   867
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   868
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   869
    numClasses := 0.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   870
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   871
    self withWaitCursorDo:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   872
        categoriesToRename := self selectedCategoriesValue copy.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   873
        categoriesToRename do:[:eachCategory |
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   874
            guess := DoWhatIMeanSupport
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   875
                        goodRenameDefaultFor:eachCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   876
                        lastOld:LastCategoryRenameOld
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   877
                        lastNew:LastCategoryRenameNew.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   878
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   879
            guess isNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   880
                guess := eachCategory string.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   881
            ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   882
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   883
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   884
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   885
            allCategories := environment allClassCategories asArray sort.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   886
            combosList := LastCategoryRenames.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   887
            (combosList size > 0 and:[combosList includes:eachCategory]) ifFalse:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   888
                combosList size == 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   889
                    combosList := List with:eachCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   890
                ] ifFalse:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   891
                    combosList := (List with:eachCategory with:'-') , combosList
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   892
                ]
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   893
            ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   894
            cancelAll := false.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   895
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   896
            box :=  SmallSense::CategorySelectDialog new.   
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   897
            box title: (resources string:'Rename class category...').
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   898
            categoriesToRename size > 1 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   899
                box addButtonWithLabel: (resources string:'Cancel All') action:[  cancelAll := true. box doCancel ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   900
            ].               
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   901
            box addButtonCancel.   
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   902
            box addButtonAccept.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   903
            guess notNil ifTrue:[ 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   904
                box pattern: guess.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   905
                box selection: guess. 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   906
            ]. 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   907
            newCategory := box open.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   908
            cancelAll ifTrue:[^ self].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   909
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   910
            newCategory notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   911
                newCategory := newCategory withoutSeparators asSymbol.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   912
                LastCategoryRenames isNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   913
                    LastCategoryRenames := OrderedCollection new
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   914
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   915
                LastCategoryRenames addFirst:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   916
                LastCategoryRenames size > 20 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   917
                    LastCategoryRenames removeLast
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   918
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   919
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   920
                LastCategoryRenameOld := eachCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   921
                LastCategoryRenameNew := newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   922
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   923
                (self selectedClassesInCategories:(Array with:eachCategory)) do:[:aClass |
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   924
                    "/ must be loaded ...
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   925
                    aClass autoload
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   926
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   927
                (self selectedClassesInCategories:(Array with:eachCategory)) do:[:aClass |
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   928
                    aClass category ~= newCategory ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   929
                        numClasses := numClasses + 1.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   930
                        change notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   931
                            change changeClassCategoryOf:aClass to:newCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   932
                        ] ifFalse:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   933
                            aClass category:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   934
                        ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   935
                    ]
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   936
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   937
                numClasses == 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   938
                    self categoryListApp addAdditionalCategory:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   939
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   940
                self selectedCategories value:(Array with:newCategory).
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   941
            ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   942
        ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   943
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   944
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   945
    change notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   946
        numClasses > 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   947
            change name:('Rename category of %1 classes' bindWith:numClasses).
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   948
            RefactoryChangeManager performChange:change
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   949
        ]
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   950
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   951
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   952
    "
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   953
    stx_goodies_smallsense swizzle: (Tools::NewSystemBrowser >> #stx_goodies_smallsense_categoryMenuRename)
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   954
    "
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   955
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   956
    "Created: / 01-08-2015 / 06:06:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   957
! !
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   958
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   959
!Tools::NewSystemBrowser class methodsFor:'utilities'!
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   960
359
c9f69a8e441c Merged c53e9ee72f71 and 5c2cffd3c13c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 354 289
diff changeset
   961
stx_goodies_smallsense_askForClassToSearch:doWhatByDefault single:singleClass msgTail:msgTail resources:resourcesOrNil filter:filterOrNil forBrowser:aBrowserOrNil thenDo:aBlock
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   962
    "utility common code for both opening a new browser on a class and
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   963
     to search for a class in an existing browser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   964
     If singleClass is true, a single class will be asked for and browsed,
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   965
     otherwise, a match pattern is allowed and a multi-class browser is opened.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   966
     Moved from instance protocol for better reusability."
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   967
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   968
    <swizzle: #askForClassToSearch:single:msgTail:resources:filter:forBrowser:thenDo:>
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   969
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   970
    |classes box boxLabel title okText okText2 okText3 className canFind doWhat doWhat2 doWhat3 resources showFullNameHolder onlyShowJavaClassesHolder|
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   971
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   972
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   973
        ^ self stx_libtool_askForClassToSearch:doWhatByDefault single:singleClass msgTail:msgTail resources:resourcesOrNil filter:filterOrNil forBrowser:aBrowserOrNil thenDo:aBlock
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   974
    ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   975
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   976
    resources := resourcesOrNil ? self classResources.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   977
    showFullNameHolder := (LastClassSearchBoxShowedFullName ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   978
    onlyShowJavaClassesHolder := (LastClassSearchBoxShowedJavaOnly ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   979
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   980
    doWhat := doWhatByDefault.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   981
    canFind := aBrowserOrNil notNil
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   982
               and:[aBrowserOrNil navigationState notNil and:[ aBrowserOrNil navigationState isFullBrowser ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   983
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   984
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   985
        title := 'Select a class'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   986
        boxLabel := (resources string:'Select a class').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   987
        okText := 'OK'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   988
        okText2 := nil. doWhat2 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   989
        okText3 := nil. doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   990
    ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   991
        title := (singleClass ifTrue:[ 'Class to browse' ] ifFalse:[ 'Class(es) to browse' ]).
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   992
        boxLabel := (resources string:'Browse or Search').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   993
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   994
        (doWhat isNil and:[canFind not]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   995
            doWhat := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   996
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   997
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   998
        doWhat == #newBrowser ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   999
            okText := 'Open New Window'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1000
            okText2 := 'Open New Buffer'. doWhat2 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1001
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1002
        ] ifFalse:[ doWhat == #newBuffer ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1003
            okText := 'Open New Buffer'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1004
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1005
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1006
        ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1007
            title := (singleClass ifTrue:[ 'Class to find' ] ifFalse:[ 'Class(es) to find' ]).
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1008
            okText := 'Open'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1009
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1010
            okText3 := 'Open New Buffer'. doWhat3 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1011
        ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1012
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1013
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1014
    box := SmallSense::ClassSearchDialog new.
344
88d012c17762 Post-merge fixes to catch up with PO refactoring.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
  1015
    box multiselect: true.
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1016
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1017
    "button3" "okButton" "button2" "cancel"
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1018
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1019
    box addButtonCancel.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1020
    doWhat notNil ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1021
        box addButtonWithLabel: (resources string:okText) action: [ box doAccept ] enablement: box acceptEnabledHolder.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1022
        (aBrowserOrNil notNil and:[aBrowserOrNil navigationState isFullBrowser]) "singleClass" ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1023
            box addButtonWithLabel: (resources string:okText3) action: [ doWhat := doWhat3. box doAccept ] enablement: box acceptEnabledHolder.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1024
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1025
        box addButtonWithLabel: (resources string:okText2) action: [ doWhat := doWhat2. box doAccept ] enablement: box acceptEnabledHolder.
359
c9f69a8e441c Merged c53e9ee72f71 and 5c2cffd3c13c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 354 289
diff changeset
  1026
    ] ifFalse:[
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1027
        box addButtonAccept.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1028
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1029
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1030
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1031
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1032
    classes := box open.
947
fc447c16aab8 Issue #87: Error when trying to find a Class (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 895
diff changeset
  1033
    classes size == 0 ifTrue:[ ^ nil ].
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1034
    self assert: classes size == 1.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1035
    className := classes anElement name.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1036
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1037
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1038
    LastClassSearchBoxShowedFullName := showFullNameHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1039
    LastClassSearchBoxShowedJavaOnly := onlyShowJavaClassesHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1040
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1041
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1042
        aBlock notNil ifTrue:[aBlock value:className optionalArgument:singleClass and:doWhat].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1043
        ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1044
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1045
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1046
    aBrowserOrNil withSearchCursorDo:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1047
        aBlock value:className value:singleClass value:doWhat.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1048
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1049
    ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1050
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1051
    "Created: / 28-04-2014 / 23:41:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
947
fc447c16aab8 Issue #87: Error when trying to find a Class (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 895
diff changeset
  1052
    "Modified: / 05-05-2016 / 16:47:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1053
! !
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1054
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1055
!UserPreferences methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1056
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1057
smallSenseBackgroundLintEnabled
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1058
    "Return true if SmallSense background source checking is enabled"
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1059
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1060
    ^self at:#smallSenseBackgroundLintEnabled ifAbsent:[false]
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1061
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1062
    "Created: / 30-01-2012 / 19:59:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1063
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1064
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1065
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1066
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1067
smallSenseBackgroundLintEnabled: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1068
    "Return true if SmallSense background source checking is enabled"
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1069
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1070
    ^self at:#smallSenseBackgroundLintEnabled put: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1071
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1072
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1073
	UserPreferences current smallSenseBackgroundLintEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1074
	UserPreferences current smallSenseBackgroundLintEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1075
	UserPreferences current smallSenseBackgroundLintEnabled: false
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1076
    "
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1077
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1078
    "Created: / 30-01-2012 / 20:00:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1079
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1080
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1081
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1082
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1083
smallSenseBackgroundTypingEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1084
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1085
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1086
    ^self at:#smallSenseBackgroundTypingEnabled ifAbsent:[false]
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1087
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1088
    "Created: / 04-02-2012 / 21:41:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1089
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1090
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1091
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1092
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1093
smallSenseBackgroundTypingEnabled: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1094
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1095
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1096
    ^self at:#smallSenseBackgroundTypingEnabled put: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1097
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1098
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1099
	UserPreferences current smallSenseBackgroundTypingEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1100
	UserPreferences current smallSenseBackgroundTypingEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1101
	UserPreferences current smallSenseBackgroundTypingEnabled: false
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1102
    "
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1103
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1104
    "Created: / 04-02-2012 / 21:41:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1105
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1106
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1107
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1108
154
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1109
smallSenseCompleteIfUnambiguous
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1110
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1111
    ^self at:#smallSenseCompleteIfUnambiguous ifAbsent:[false]
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1112
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1113
    "Created: / 18-01-2014 / 23:08:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1114
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1115
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1116
!UserPreferences methodsFor:'accessing-SmallSense'!
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1117
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1118
smallSenseCompleteIfUnambiguous: aBoolean
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1119
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1120
    ^self at:#smallSenseCompleteIfUnambiguous put: aBoolean.
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1121
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1122
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1123
    UserPreferences current smallSenseCompleteIfUnambiguous
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1124
    UserPreferences current smallSenseCompleteIfUnambiguous: true.
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1125
    UserPreferences current smallSenseCompleteIfUnambiguous: false.
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1126
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1127
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1128
    "Created: / 18-01-2014 / 23:08:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1129
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1130
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1131
!UserPreferences methodsFor:'accessing-SmallSense'!
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1132
177
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1133
smallSenseCompletionEnabled
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1134
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1135
    ^self at:#smallSenseCompletionEnabled ifAbsent:[self smallSenseEnabled]
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1136
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1137
    "Created: / 27-02-2014 / 09:29:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1138
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1139
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1140
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1141
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1142
smallSenseCompletionEnabled: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1143
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1144
    ^self at:#smallSenseCompletionEnabled put: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1145
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1146
    "Created: / 27-02-2014 / 09:29:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1147
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1148
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1149
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1150
454
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1151
smallSenseElectricEditSupportEnabled
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1152
    ^ self at:#smallSenseElectricEditSupportEnabled ifAbsent:[ false ].
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1153
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1154
    "Created: / 02-05-2015 / 21:57:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1155
! !
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1156
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1157
!UserPreferences methodsFor:'accessing-SmallSense'!
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1158
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1159
smallSenseElectricEditSupportEnabled: aBoolean
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1160
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1161
    ^self at:#smallSenseElectricEditSupportEnabled put: aBoolean
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1162
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1163
    "Created: / 02-05-2015 / 21:57:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1164
! !
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1165
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1166
!UserPreferences methodsFor:'accessing-SmallSense'!
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1167
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1168
smallSenseEnabled
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1169
    "Return true if SmallSense is enabled"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1170
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1171
    ^self at:#smallSenseEnabled ifAbsent:[false]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1172
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1173
    "Created: / 27-11-2011 / 17:20:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1174
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1175
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1176
!UserPreferences methodsFor:'accessing-SmallSense'!
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1177
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1178
smallSenseEnabled: aBoolean
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1179
    "enable/disable SmallSense"
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1180
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1181
    ^self at:#smallSenseEnabled put: aBoolean.
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1182
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1183
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1184
    UserPreferences current smallSenseEnabled.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1185
    UserPreferences current smallSenseEnabled: true.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1186
    UserPreferences current smallSenseEnabled: false.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1187
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1188
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1189
    "Created: / 02-04-2012 / 11:37:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1190
! !
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1191
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1192
!UserPreferences methodsFor:'accessing-SmallSense'!
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1193
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1194
smallSenseNewDialogsEnabled
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1195
    ^ self smallSenseEnabled
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1196
        and:[self at:#smallSenseNewDialogsEnabled ifAbsent:[false]]
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1197
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1198
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1199
    UserPreferences current smallSenseNewDialogsEnabled.
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1200
    UserPreferences current smallSenseNewDialogsEnabled: true.
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1201
    UserPreferences current smallSenseNewDialogsEnabled: false.   
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1202
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1203
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1204
    "Created: / 10-05-2014 / 00:05:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1205
    "Modified (comment): / 25-11-2014 / 13:06:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1206
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1207
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1208
!UserPreferences methodsFor:'accessing-SmallSense'!
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1209
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1210
smallSenseNewDialogsEnabled: aBoolean
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1211
1143
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1212
    self at:#smallSenseNewDialogsEnabled put: aBoolean.
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1213
    UserPreferences current == self ifTrue: [ 
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1214
        aBoolean ifTrue: [
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1215
            SmallSense::DialogBox install
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1216
        ] ifFalse: [ 
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1217
            SmallSense::DialogBox uninstall
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1218
        ].
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1219
    ].
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1220
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1221
    "
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1222
    UserPreferences current smallSenseNewDialogsEnabled: true.
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1223
    UserPreferences current smallSenseNewDialogsEnabled: false.
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1224
    Dialog
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1225
    "
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1226
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1227
    "Created: / 10-05-2014 / 00:04:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1143
66b5c959cee1 Add `SmallSense::DialogBox` - a drop-in replacement for standard dialogs
Jan Vrany <jan.vrany@labware.com>
parents: 1027
diff changeset
  1228
    "Modified (comment): / 02-09-2022 / 20:14:28 / Jan Vrany <jan.vrany@labware.com>"
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1229
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1230
255
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1231
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1232
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1233
smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1234
    "Return true if SmallSense indent-on-paste is enabled for Smalltalk language"
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1235
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1236
    ^self at:#smallSenseSmalltalkIndentOnPasteEnabled ifAbsent:[false]
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1237
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1238
    "Created: / 19-07-2014 / 00:11:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1239
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1240
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1241
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1242
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1243
smallSenseSmalltalkIndentOnPasteEnabled: aBoolean
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1244
    "Set SmallSense indent-on-paste feature for Smalltalk"
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1245
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1246
    ^ self at:#smallSenseSmalltalkIndentOnPasteEnabled put: aBoolean
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1247
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1248
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1249
    UserPreferences current smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1250
    UserPreferences current smallSenseSmalltalkIndentOnPasteEnabled: true.
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1251
    UserPreferences current smallSenseSmalltalkIndentOnPasteEnabled: false.
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1252
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1253
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1254
    "Created: / 19-07-2014 / 00:11:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1255
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1256
444
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1257
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1258
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1259
smallSenseSmalltalkIterationVariableNameMaxLength
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1260
    "Maximum length for iteration variable name. If variable name computed from
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1261
     collection name exeeds the max length, 'each' is used instead."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1262
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1263
    ^self at:#smallSenseSmalltalkIterationVariableNameMaxLength ifAbsent:[15"Magic number"]
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1264
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1265
    "Created: / 04-03-2015 / 08:01:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1266
    "Modified: / 04-03-2015 / 09:39:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1267
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1268
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1269
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1270
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1271
smallSenseSmalltalkIterationVariableNameMaxLength: anInteger
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1272
    "Sets the maximum length for iteration variable name. If variable name computed from
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1273
     collection name exeeds the max length, 'each' is used instead."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1274
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1275
    ^self at:#smallSenseSmalltalkIterationVariableNameMaxLength put: anInteger
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1276
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1277
    "Created: / 04-03-2015 / 08:01:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1278
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1279
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1280
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1281
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1282
smallSenseSmalltalkIterationVariableNamePrefixWithEach
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1283
    "If true, then iteration variable names are prefixed with 'each', i.e.,
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1284
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1285
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1286
    ^self at:#smallSenseSmalltalkIterationVariableNamePrefixWithEach ifAbsent:[false]
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1287
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1288
    "Created: / 04-03-2015 / 07:57:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1289
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1290
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1291
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1292
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1293
smallSenseSmalltalkIterationVariableNamePrefixWithEach: aBoolean
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1294
    "If true, then iteration variable names are prefixed with 'each', i.e.,
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1295
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1296
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1297
    ^self at:#smallSenseSmalltalkIterationVariableNamePrefixWithEach put: aBoolean.
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1298
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1299
    "Created: / 04-03-2015 / 07:57:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1300
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1301
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1302
!VariableNode methodsFor:'queries'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1303
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1304
isGlobalOrPrivateClass
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1305
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1306
    ^ type == #GlobalVariable or:[type == #PrivateClass]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1307
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1308
    "Created: / 27-11-2011 / 16:31:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1309
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1310
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1311
!VariableNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1312
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1313
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1314
    navigator navigateToVariableNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1315
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1316
    "Created: / 24-09-2013 / 10:04:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1317
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1318
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1319
!WorkspaceApplication methodsFor:'event handling'!
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1320
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1321
processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1322
    "a shortcut key event as forwarded from the keyboardProcessor - if there is the
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1323
     shortcut key defined, process the shortcut and return true - otherwise false."
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1324
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1325
    UserPreferences current smallSenseNewDialogsEnabled ifTrue:[   
1027
13a835555b48 Keyboard mapping: code updated to catch up with `KeyboardMap`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 983
diff changeset
  1326
       (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasMappingFor:#OpenNavigator) not]]) ifTrue:[ 
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1327
            SmallSense::Navigator open.
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1328
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1329
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1330
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1331
    ^ super processShortcut:aKeyPressEvent
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1332
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1333
    "Created: / 25-01-2015 / 12:18:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1334
    "Modified: / 11-02-2015 / 21:33:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1335
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1336
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1337
!stx_goodies_smallsense class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1338
29
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1339
extensionsVersion_HG
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1340
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1341
    ^ '$Changeset: <not expanded> $'
34
5be71b1d52ec SmallSenseResultItem ranemd to SmallSensePO.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
  1342
! !