extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sat, 01 Aug 2015 06:17:30 +0100
changeset 881 9a58acda666b
parent 458 de41bf2025c0
child 885 46623318ae3b
permissions -rw-r--r--
Introduced CategorySelectDialog for selecting class category Used by browser to rename class categories.
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:[   
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    67
        (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasBindingFor: #OpenNavigator) not]]) ifTrue:[ 
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
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    78
!DialogBox class methodsFor:'smalltalk dialogs-SmallSense'!
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    79
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    80
stx_goodies_smallsense_requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    81
    "Ask for a project (package-id)"
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    82
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    83
    <swizzle: #requestProject:from:initialAnswer:suggestions:>
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    84
    "
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    85
    stx_goodies_smallsense swizzle: (DialogBox class >> #stx_goodies_smallsense_requestProject:from:initialAnswer:suggestions:)
359
c9f69a8e441c Merged c53e9ee72f71 and 5c2cffd3c13c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 354 289
diff changeset
    86
    "
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    87
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    88
    | dialog |
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    89
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    90
    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
    91
        ^ self stx_libwidg_requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    92
    ].
367
bd7749edb1c6 Decoupling search logic from dialogs (part 2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 366
diff changeset
    93
    dialog := SmallSense::PackageSelectDialog new.
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    94
    dialog title: title.
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    95
    dialog filter: [ :pkg | listOfProjects includes: pkg ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    96
    (initialTextOrNil notNil and:[initialTextOrNil ~~ PackageId noProjectID]) ifTrue:[
365
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    97
        initialTextOrNil isEmpty ifTrue:[
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    98
            suggestions size == 1 ifTrue:[
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    99
                dialog pattern:   suggestions anElement. 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   100
                dialog selection: suggestions anElement. 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   101
            ].
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   102
        ] ifFalse:[ 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   103
            dialog pattern: initialTextOrNil.
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   104
            dialog selection: initialTextOrNil.
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   105
        ]
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   106
    ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   107
    ^ dialog open.
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
   108
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   109
    "Created: / 25-11-2014 / 13:20:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
423
60c930c93819 dialogs: performance cleanup - perform (expensive) list computation always in background.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 421
diff changeset
   110
    "Modified: / 21-02-2015 / 08:59:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
60c930c93819 dialogs: performance cleanup - perform (expensive) list computation always in background.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 421
diff changeset
   111
    "Modified (comment): / 21-02-2015 / 17:53:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
   112
! !
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
   113
137
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   114
!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
   115
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   116
autoIndent
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   117
    ^ autoIndent
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   118
! !
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   119
279
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   120
!EditTextViewCompletionSupport methodsFor:'queries'!
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   121
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   122
isCompletionViewShown
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   123
    ^ 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
   124
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   125
    "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
   126
! !
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   127
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   128
!HTMLDocumentView methodsFor:'actions'!
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   129
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   130
doQuickFix: quickFixNo
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   131
    | app |
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   132
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   133
    app := self application.
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   134
    app notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   135
	app doQuickFix: quickFixNo
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   136
    ].
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   137
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   138
    "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
   139
! !
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   140
395
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   141
!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
   142
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   143
preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   144
    "/ 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
   145
    "/ 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
   146
    "/ InspectorView...
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   147
    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
   148
        | completion support |
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   149
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   150
        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
   151
        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
   152
        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
   153
        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
   154
        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
   155
    ].
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   156
    super preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   157
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   158
    "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
   159
! !
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   160
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
!MessageNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
    aBlock value: #receiver value: receiver.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
    argArray notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   167
	argArray withIndexDo:[:node :idx|
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   168
	    aBlock value: 'arg[' , idx printString , ']' value: node
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   169
	]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
    ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
    "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
   173
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   174
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   175
!MessageNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   176
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   177
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   178
    navigator navigateToMessageNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   179
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   180
    "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
   181
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   182
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   183
!Method methodsFor:'inspecting'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   184
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
   185
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
   186
    <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
   187
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   188
    ^ (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
   189
        label:'Parse Tree (RB)';
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   190
        priority:35;
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   191
        application:
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   192
                [
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
   193
                    | 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
   194
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
   195
                    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
   196
                    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
   197
                    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
   198
                ];
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
   199
        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
   200
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
   201
    "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
   202
! !
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
   203
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
   204
!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
   205
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
   206
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
   207
    <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
   208
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
   209
    ^ (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
   210
        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
   211
        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
   212
        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
   213
                [
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   214
                    | src parser |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   215
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   216
                    src := self source.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   217
                    parser := self parserClass parseMethod: src.
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   218
                    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
   219
                ];
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   220
        yourself
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   221
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
   222
    "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
   223
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   224
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
!ParseErrorNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
    "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
   229
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
   230
    ^ 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
   231
        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
   232
    ]
60
0daf99c34c5e Initial support for syntax-error tolerant parsing of Smalltalk.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 51
diff changeset
   233
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
   234
    "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
   235
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   236
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
!ParseNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
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
   239
childNamesAndValuesDo:aBlock
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
    "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
   241
     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
   242
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
   243
    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
   244
        | 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
   245
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   246
        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
   247
        (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
   248
            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
   249
        ] 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
   250
            (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
   251
                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
   252
                    (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
   253
                        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
   254
                    ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   255
                ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   256
            ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   257
        ]
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   258
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   260
    "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
   261
    "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
   262
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   263
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
    | t |
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
    t := self objectAttributeAt:#inferedType.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   270
    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
   271
    ^t
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
    "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
   274
    "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
   275
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   276
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
    ^ self objectAttributeAt:#inferedType put: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
    "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
   284
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   285
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
   286
!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
   287
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
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
   289
    <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
   290
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
    ^ (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
   292
        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
   293
        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
   294
        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
   295
                [
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
                    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
   297
                ];
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
        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
   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
    "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
   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
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
!ParseNode methodsFor:'testing'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
isSelector
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
    "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
   307
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
    ^ false
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
    "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
   311
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   312
102
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   313
!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
   314
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   315
navigateToUsing:navigator
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   316
    "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
   317
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   318
    "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
   319
! !
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   320
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
   321
!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
   322
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
   323
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
   324
    <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
   325
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
    ^ (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
   327
        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
   328
        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
   329
        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
   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
                    | 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
   332
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
                    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
   334
                        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
   335
                    ].
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
                    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
   337
                ];
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
   338
        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
   339
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
   340
    "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
   341
! !
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
   342
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
!PrimaryNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
    "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
   348
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
    "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
   350
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   351
150
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   352
!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
   353
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   354
inferedType
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   355
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   356
    ^ 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
   357
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   358
    "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
   359
! !
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   360
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
   361
!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
   362
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
   363
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
   364
    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
   365
        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
   366
    ].
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
   367
    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
   368
        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
   369
    ]
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
   370
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
   371
    "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
   372
! !
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
   373
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   374
!RBContainsSmalltalkXEOLCommentRule methodsFor:'accessing'!
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   375
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   376
fixes: fixer
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   377
    | changes |
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   378
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   379
    changes := self changes.
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   380
    changes notEmptyOrNil ifTrue:[
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   381
        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
   382
            rule: self;
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   383
            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
   384
            action: [ fixer apply:
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   385
                ((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
   386
            ].
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   387
    ]
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   388
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   389
    "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
   390
    "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
   391
! !
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   392
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   393
!RBLintRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   394
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   395
fixes: aSmallSenseQuickFixer
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   396
    "Adds all possible code fixes to given quick fixer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   397
     Default is to do nothing, meaning that there are
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   398
     no quickfixes available"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   399
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   400
    "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
   401
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   402
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
   403
!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
   404
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
   405
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
   406
    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
   407
        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
   408
    ].
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
   409
    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
   410
        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
   411
    ]
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
   412
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
   413
    "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
   414
    "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
   415
! !
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
!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
   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
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
   420
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
    "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
   422
     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
   423
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
    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
   425
        | 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
   426
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
        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
   428
            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
   429
            (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
   430
                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
   431
            ] 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
   432
                (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
   433
                    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
   434
                        (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
   435
                            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
   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
    ]
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
    "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
   444
! !
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
!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
   447
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
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
   449
    ^ 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
   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
    "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
   452
! !
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
!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
   455
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
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
   457
    ^ 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
   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
    "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
   460
! !
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
   461
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   462
!RBTransformationRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   463
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   464
fixes: fixer
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   465
    | changes |
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   466
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   467
    changes := self changes.
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   468
    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
   469
        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
   470
            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
   471
            label:'Rewrite the code';
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
            action: [ fixer apply:
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
   473
                ((ChangeSet withAll:self changes) name: self name)
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
   474
            ].
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   475
    ]
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   476
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   477
    "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
   478
    "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
   479
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   480
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   481
!ReturnNode methodsFor:'enumeration'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   482
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   483
childNamesAndValuesDo:aBlock
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   484
    aBlock value: 'expression' value: expression.
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
    "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
   487
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   488
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
!StatementNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   491
childNamesAndValuesDo:aBlock
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   492
    | stmt index |
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   493
    stmt := self.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   494
    index := 1.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   495
    [ stmt notNil ] whileTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   496
        | expr |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   497
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   498
        stmt isReturnNode ifTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   499
            expr := stmt.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   500
        ] ifFalse:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   501
            expr := stmt expression.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   502
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   503
        aBlock value: ('statement[%1]' bindWith: index) value: expr.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   504
        stmt := stmt nextStatement.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   505
        index := index + 1.
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   506
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   508
    "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
   509
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   510
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
!StatementNode methodsFor:'accessing-SmallSense'!
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
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
    ^ expression inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
    "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
   518
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   519
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
!StatementNode methodsFor:'accessing-SmallSense'!
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
inferedType: aSmallSenseType
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
    ^ self shouldNotImplement
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
    "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
   527
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   528
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   529
!Tools::CodeCompletionService class methodsFor:'instance creation'!
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   530
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   531
new
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   532
    "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
   533
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   534
    ^ (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
   535
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   536
    "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
   537
    "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
   538
! !
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
   539
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
   540
!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
   541
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
   542
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
   543
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   544
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   545
    ^ (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
   546
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
    "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
   548
    "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
   549
! !
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   550
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   551
!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
   552
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   553
new
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   554
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   555
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   556
    ^ (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
   557
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   558
    "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
   559
    "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
   560
! !
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
   561
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   562
!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
   563
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   564
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
   565
    "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
   566
     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
   567
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   568
    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
   569
        (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasBindingFor: #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
   570
            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
   571
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   572
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   573
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   574
    ^ 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
   575
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   576
    "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
   577
    "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
   578
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   579
311
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   580
!Tools::LintService methodsFor:'event handling'!
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   581
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   582
buttonPress:button x:x y:y in:view 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   583
    |lineNr|
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   584
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   585
    view == gutterView ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   586
        button == 1 ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   587
            lineNr := textView yVisibleToLineNr:y.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   588
            lineNr notNil ifTrue:[ 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   589
                ^ self showInfoWindowForLine: lineNr 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   590
            ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   591
            ^ false.
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
    ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   594
    ^ false
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   595
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   596
    "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
   597
    "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
   598
! !
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   599
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   600
!Tools::LintService methodsFor:'private'!
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
showInfoWindowForLine: lineNo
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   603
    | ann |
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   604
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   605
    ann := self annotationAtLine: lineNo.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   606
    ann isNil ifTrue:[ ^ false ].
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
    SmallSense::CriticsWindow new
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   609
        rule: ann rule;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   610
        codeView: codeView;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   611
        allButOpen;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   612
        openWindowAt: (Screen current pointerPosition - (20@20)).
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   613
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   614
    ^true
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
    "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
   617
    "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
   618
! !
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   619
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   620
!Tools::NavigationState methodsFor:'aspects - SmallSense'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   621
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   622
stx_goodies_smallsense_selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   623
    <swizzle: #selectedClasses>
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   624
    selectedClasses isNil ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   625
        selectedClasses := nil asValue.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   626
        (ConfigurableFeatures includesFeature:'SmallSenseEnabled') ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   627
            selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   628
                onChangeEvaluate:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   629
                    selectedClasses value ? #() do:[:cls |
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   630
                        (Smalltalk at:#'SmallSense::Manager') instance updateInfoForClass:cls.
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   631
                    ].
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   632
                ]
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   633
        ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   634
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   635
    ^ selectedClasses
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   636
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   637
    "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
   638
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   639
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   640
!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
   641
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   642
processShortcut: aKeyPressEvent
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   643
    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
   644
        aKeyPressEvent isKeyPressEvent ifTrue:[
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   645
            (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasBindingFor: #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
   646
                self searchMenuOpenNavigatorOnDeclarations.
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   647
                ^ true
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   648
            ].
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   649
        ].
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   650
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   651
    ^ 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
   652
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   653
    "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
   654
    "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
   655
! !
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   656
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
   657
!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
   658
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   659
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
   660
    "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
   661
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   662
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
   663
    ^ [: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
   664
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
    "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
   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
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   668
!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
   669
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   670
searchMenuOpenNavigatorOnDeclarations
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   671
    "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
   672
     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
   673
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   674
    | result |    
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   675
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   676
    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
   677
    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
   678
        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
   679
        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
   680
        ^ self
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 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
   683
        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
   684
        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
   685
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   686
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   687
    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
   688
        (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
   689
            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
   690
                  sortBy:#class 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   691
                  in:#newBuffer 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   692
                  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
   693
        ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   694
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   695
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   696
    ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   697
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   698
    "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
   699
    "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
   700
! !
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   701
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
   702
!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
   703
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   704
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
   705
    "/sorry, no method search yet"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   706
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
   707
    ^ 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
   708
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   709
    "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
   710
    "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
   711
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   712
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
!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
   714
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
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
   716
    "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
   717
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   718
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
   719
    ^ [: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
   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
    "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
   722
    "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
   723
! !
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
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
!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
   726
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   727
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
   728
    ^ (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
   729
        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
   730
        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
   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
    "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
   733
    "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
   734
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   735
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
!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
   737
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   738
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
   739
    | 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
   740
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
    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
   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
    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
   745
    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
   746
        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
   747
    ].
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
    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
   749
    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
   750
    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
   751
    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
   752
        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
   753
    ] 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
   754
        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
   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
    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
   757
    [
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
        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
   759
    ] 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
   760
        matches := OrderedCollection new.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   761
        env
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   762
            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
   763
                | 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
   764
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
                cls := env at:nm.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   766
                (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
   767
                        ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   768
                            "cls isJavaClass"false ifTrue:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   769
                                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
   770
                                    (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
   771
                                        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
   772
                                    ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   773
                                ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   774
                            ] ifFalse:[
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   775
                                (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
   776
                                    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
   777
                                ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   778
                            ]
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
   779
                        ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   780
            ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   781
        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
   782
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   783
    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
   784
        ^ #( 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
   785
    ] ifFalse:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   786
        matches := matches
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   787
                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
   788
                    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
   789
                ].
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 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
   792
            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
   793
        }
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   794
    ]
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   795
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
    "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
   797
    "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
   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
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   800
!Tools::NewSystemBrowser methodsFor:'private-dialogs-SmallSense'!
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   801
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   802
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
   803
    "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
   804
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   805
    <swizzle: #askForMethodCategory:title:okLabel:list:recentList:initialAnswer:>
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   806
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   807
    | dialog |
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   808
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   809
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   810
        ^ 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
   811
    ].
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   812
    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
   813
    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
   814
    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
   815
    dialog addButtonAcceptWithLabel: (resources string: okLabel).  
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   816
    initialText notNil ifTrue:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   817
        dialog pattern: initialText.
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   818
        dialog selection: initialText. 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   819
    ].
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   820
    ^ dialog open
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   821
    "
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   822
    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
   823
    "
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   824
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   825
    "Created: / 09-01-2015 / 10:44:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
423
60c930c93819 dialogs: performance cleanup - perform (expensive) list computation always in background.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 421
diff changeset
   826
    "Modified (comment): / 21-02-2015 / 17:52:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   827
! !
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   828
881
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   829
!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
   830
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   831
stx_goodies_smallsense_categoryMenuRename
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   832
    |categoriesToRename allCategories newCategory box
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   833
     cancelAll guess combosList change numClasses|
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   834
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   835
    <swizzle: #categoryMenuRename>
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   836
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   837
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   838
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   839
        ^ self stx_libtool_categoryMenuRename
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   840
    ]. 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   841
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   842
    self canUseRefactoringSupport ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   843
        change := CompositeRefactoryChange named:'Rename categories'.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   844
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   845
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   846
    numClasses := 0.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   847
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   848
    self withWaitCursorDo:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   849
        categoriesToRename := self selectedCategoriesValue copy.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   850
        categoriesToRename do:[:eachCategory |
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   851
            guess := DoWhatIMeanSupport
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   852
                        goodRenameDefaultFor:eachCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   853
                        lastOld:LastCategoryRenameOld
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   854
                        lastNew:LastCategoryRenameNew.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   855
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   856
            guess isNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   857
                guess := eachCategory string.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   858
            ].
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
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   862
            allCategories := environment allClassCategories asArray sort.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   863
            combosList := LastCategoryRenames.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   864
            (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
   865
                combosList size == 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   866
                    combosList := List with:eachCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   867
                ] ifFalse:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   868
                    combosList := (List with:eachCategory with:'-') , combosList
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   869
                ]
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
            cancelAll := false.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   872
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   873
            box :=  SmallSense::CategorySelectDialog new.   
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   874
            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
   875
            categoriesToRename size > 1 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   876
                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
   877
            ].               
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   878
            box addButtonCancel.   
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   879
            box addButtonAccept.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   880
            guess notNil ifTrue:[ 
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   881
                box pattern: guess.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   882
                box selection: guess. 
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
            newCategory := box open.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   885
            cancelAll ifTrue:[^ self].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   886
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   887
            newCategory notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   888
                newCategory := newCategory withoutSeparators asSymbol.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   889
                LastCategoryRenames isNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   890
                    LastCategoryRenames := OrderedCollection new
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   891
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   892
                LastCategoryRenames addFirst:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   893
                LastCategoryRenames size > 20 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   894
                    LastCategoryRenames removeLast
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
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   897
                LastCategoryRenameOld := eachCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   898
                LastCategoryRenameNew := newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   899
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   900
                (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
   901
                    "/ must be loaded ...
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   902
                    aClass autoload
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   903
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   904
                (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
   905
                    aClass category ~= newCategory ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   906
                        numClasses := numClasses + 1.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   907
                        change notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   908
                            change changeClassCategoryOf:aClass to:newCategory
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   909
                        ] ifFalse:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   910
                            aClass category:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   911
                        ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   912
                    ]
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   913
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   914
                numClasses == 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   915
                    self categoryListApp addAdditionalCategory:newCategory.
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   916
                ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   917
                self selectedCategories value:(Array with:newCategory).
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
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   921
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   922
    change notNil ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   923
        numClasses > 0 ifTrue:[
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   924
            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
   925
            RefactoryChangeManager performChange:change
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
    ].
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   928
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   929
    "
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   930
    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
   931
    "
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   932
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   933
    "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
   934
! !
9a58acda666b Introduced CategorySelectDialog for selecting class category
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 458
diff changeset
   935
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   936
!Tools::NewSystemBrowser class methodsFor:'utilities'!
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   937
359
c9f69a8e441c Merged c53e9ee72f71 and 5c2cffd3c13c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 354 289
diff changeset
   938
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
   939
    "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
   940
     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
   941
     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
   942
     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
   943
     Moved from instance protocol for better reusability."
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   944
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   945
    <swizzle: #askForClassToSearch:single:msgTail:resources:filter:forBrowser:thenDo:>
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   946
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   947
    |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
   948
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   949
    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
   950
        ^ 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
   951
    ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   952
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   953
    resources := resourcesOrNil ? self classResources.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   954
    showFullNameHolder := (LastClassSearchBoxShowedFullName ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   955
    onlyShowJavaClassesHolder := (LastClassSearchBoxShowedJavaOnly ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   956
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   957
    doWhat := doWhatByDefault.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   958
    canFind := aBrowserOrNil notNil
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   959
               and:[aBrowserOrNil navigationState notNil and:[ aBrowserOrNil navigationState isFullBrowser ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   960
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   961
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   962
        title := 'Select a class'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   963
        boxLabel := (resources string:'Select a class').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   964
        okText := 'OK'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   965
        okText2 := nil. doWhat2 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   966
        okText3 := nil. doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   967
    ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   968
        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
   969
        boxLabel := (resources string:'Browse or Search').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   970
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   971
        (doWhat isNil and:[canFind not]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   972
            doWhat := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   973
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   974
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   975
        doWhat == #newBrowser ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   976
            okText := 'Open New Window'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   977
            okText2 := 'Open New Buffer'. doWhat2 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   978
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   979
        ] ifFalse:[ doWhat == #newBuffer ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   980
            okText := 'Open New Buffer'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   981
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   982
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   983
        ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   984
            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
   985
            okText := 'Open'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   986
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   987
            okText3 := 'Open New Buffer'. doWhat3 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   988
        ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   989
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   990
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   991
    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
   992
    box multiselect: true.
330
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
    "button3" "okButton" "button2" "cancel"
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   995
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   996
    box addButtonCancel.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   997
    doWhat notNil ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   998
        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
   999
        (aBrowserOrNil notNil and:[aBrowserOrNil navigationState isFullBrowser]) "singleClass" ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1000
            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
  1001
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1002
        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
  1003
    ] ifFalse:[
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1004
        box addButtonAccept.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1005
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1006
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1007
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1008
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1009
    classes := box open.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1010
    classes isEmptyOrNil ifTrue:[ ^ nil ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1011
    self assert: classes size == 1.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1012
    className := classes anElement name.
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
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1015
    LastClassSearchBoxShowedFullName := showFullNameHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1016
    LastClassSearchBoxShowedJavaOnly := onlyShowJavaClassesHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1017
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1018
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1019
        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
  1020
        ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1021
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1022
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1023
    aBrowserOrNil withSearchCursorDo:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1024
        aBlock value:className value:singleClass value:doWhat.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1025
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1026
    ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1027
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1028
    "Created: / 28-04-2014 / 23:41:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1029
    "Modified: / 25-11-2014 / 13:08:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
330
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
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1032
!UserPreferences methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1033
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1034
smallSenseBackgroundLintEnabled
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1035
    "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
  1036
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1037
    ^self at:#smallSenseBackgroundLintEnabled ifAbsent:[false]
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1038
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1039
    "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
  1040
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1041
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1042
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1043
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1044
smallSenseBackgroundLintEnabled: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1045
    "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
  1046
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1047
    ^self at:#smallSenseBackgroundLintEnabled put: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1048
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1049
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1050
	UserPreferences current smallSenseBackgroundLintEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1051
	UserPreferences current smallSenseBackgroundLintEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1052
	UserPreferences current smallSenseBackgroundLintEnabled: false
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1053
    "
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1054
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1055
    "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
  1056
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1057
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1058
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1059
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1060
smallSenseBackgroundTypingEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1061
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1062
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1063
    ^self at:#smallSenseBackgroundTypingEnabled ifAbsent:[false]
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1064
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1065
    "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
  1066
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1067
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1068
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1069
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1070
smallSenseBackgroundTypingEnabled: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1071
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1072
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1073
    ^self at:#smallSenseBackgroundTypingEnabled put: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1074
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1075
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1076
	UserPreferences current smallSenseBackgroundTypingEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1077
	UserPreferences current smallSenseBackgroundTypingEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1078
	UserPreferences current smallSenseBackgroundTypingEnabled: false
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1079
    "
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
    "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
  1082
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
  1083
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1084
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
  1085
154
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1086
smallSenseCompleteIfUnambiguous
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1087
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1088
    ^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
  1089
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1090
    "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
  1091
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1092
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1093
!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
  1094
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1095
smallSenseCompleteIfUnambiguous: aBoolean
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1096
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1097
    ^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
  1098
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1099
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1100
    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
  1101
    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
  1102
    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
  1103
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1104
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1105
    "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
  1106
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1107
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1108
!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
  1109
177
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1110
smallSenseCompletionEnabled
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1111
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1112
    ^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
  1113
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1114
    "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
  1115
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1116
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1117
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1118
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1119
smallSenseCompletionEnabled: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1120
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1121
    ^self at:#smallSenseCompletionEnabled put: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1122
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1123
    "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
  1124
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1125
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1126
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1127
454
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1128
smallSenseElectricEditSupportEnabled
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1129
    ^ self at:#smallSenseElectricEditSupportEnabled ifAbsent:[ false ].
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1130
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1131
    "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
  1132
! !
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1133
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1134
!UserPreferences methodsFor:'accessing-SmallSense'!
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1135
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1136
smallSenseElectricEditSupportEnabled: aBoolean
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1137
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1138
    ^self at:#smallSenseElectricEditSupportEnabled put: aBoolean
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1139
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1140
    "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
  1141
! !
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1142
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1143
!UserPreferences methodsFor:'accessing-SmallSense'!
9ecaf7d56abe Added (missing) UserPreferences>>smallSenseElectricEditSupportEnabled
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 452
diff changeset
  1144
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1145
smallSenseEnabled
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1146
    "Return true if SmallSense is enabled"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1147
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1148
    ^self at:#smallSenseEnabled ifAbsent:[false]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1149
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1150
    "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
  1151
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1152
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1153
!UserPreferences methodsFor:'accessing-SmallSense'!
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1154
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1155
smallSenseEnabled: aBoolean
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1156
    "enable/disable SmallSense"
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1157
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1158
    ^self at:#smallSenseEnabled put: aBoolean.
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1159
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1160
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1161
    UserPreferences current smallSenseEnabled.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1162
    UserPreferences current smallSenseEnabled: true.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1163
    UserPreferences current smallSenseEnabled: false.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1164
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1165
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1166
    "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
  1167
! !
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1168
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1169
!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
  1170
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1171
smallSenseNewDialogsEnabled
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1172
    ^ 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
  1173
        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
  1174
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1175
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1176
    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
  1177
    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
  1178
    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
  1179
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1180
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1181
    "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
  1182
    "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
  1183
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1184
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1185
!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
  1186
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1187
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
  1188
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1189
    ^self at:#smallSenseNewDialogsEnabled put: aBoolean
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1190
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1191
    "Created: / 10-05-2014 / 00:04:51 / 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
  1192
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1193
255
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1194
!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
  1195
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1196
smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1197
    "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
  1198
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1199
    ^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
  1200
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1201
    "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
  1202
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1203
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1204
!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
  1205
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1206
smallSenseSmalltalkIndentOnPasteEnabled: aBoolean
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1207
    "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
  1208
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1209
    ^ 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
  1210
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1211
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1212
    UserPreferences current smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1213
    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
  1214
    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
  1215
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1216
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1217
    "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
  1218
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1219
444
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1220
!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
  1221
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1222
smallSenseSmalltalkIterationVariableNameMaxLength
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1223
    "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
  1224
     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
  1225
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1226
    ^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
  1227
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1228
    "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
  1229
    "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
  1230
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1231
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1232
!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
  1233
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1234
smallSenseSmalltalkIterationVariableNameMaxLength: anInteger
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1235
    "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
  1236
     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
  1237
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1238
    ^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
  1239
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1240
    "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
  1241
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1242
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1243
!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
  1244
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1245
smallSenseSmalltalkIterationVariableNamePrefixWithEach
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1246
    "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
  1247
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1248
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1249
    ^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
  1250
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1251
    "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
  1252
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1253
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1254
!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
  1255
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1256
smallSenseSmalltalkIterationVariableNamePrefixWithEach: aBoolean
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1257
    "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
  1258
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1259
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1260
    ^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
  1261
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1262
    "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
  1263
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1264
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1265
!VariableNode methodsFor:'queries'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1266
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1267
isGlobalOrPrivateClass
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1268
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1269
    ^ type == #GlobalVariable or:[type == #PrivateClass]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1270
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1271
    "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
  1272
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1273
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1274
!VariableNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1275
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1276
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1277
    navigator navigateToVariableNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1278
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1279
    "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
  1280
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1281
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1282
!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
  1283
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1284
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
  1285
    "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
  1286
     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
  1287
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1288
    UserPreferences current smallSenseNewDialogsEnabled ifTrue:[   
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1289
       (aKeyPressEvent key == #OpenNavigator or:[aKeyPressEvent rawKey == #CtrlT and:[(aKeyPressEvent targetView keyboardMap hasBindingFor: #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
  1290
            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
  1291
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1292
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1293
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1294
    ^ 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
  1295
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1296
    "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
  1297
    "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
  1298
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1299
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1300
!stx_goodies_smallsense class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1301
29
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1302
extensionsVersion_HG
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1303
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1304
    ^ '$Changeset: <not expanded> $'
34
5be71b1d52ec SmallSenseResultItem ranemd to SmallSensePO.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
  1305
! !