extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 04 Mar 2015 09:51:20 +0000
changeset 444 a47f43af21d6
parent 423 60c930c93819
child 452 759d04e8d40d
permissions -rw-r--r--
Smalltalk electric snippets: make iterator variable naming logic more configurable * UserPreferences current smallSenseSmalltalkIterationVariableNamePrefixWithEach: If set, then variable name is prefixed with "each", i.e., `eachPerson`. Defaults to `false`. Thanks Alexander Zottnick for suggestion. * UserPreferences current smallSenseSmalltalkIterationVariableNameMaxLength: Length limit for generated variable name, if the name is longer than this limit, fall back to generic `each` to make the code more concise. Defaults to 14 (subject to change). These preferences are "hidden" for now, i.e., there is no configuration UI for them. One has to add the setting to her/his user startup file.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
444
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
     1
"{ Encoding: utf8 }"
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
     2
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
     3
"{ Package: 'stx:goodies/smallsense' }"!
0
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
!AssignmentNode methodsFor:'enumeration'!
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
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
    aBlock value: #variable   value: variable.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
    aBlock value: #expression value: expression.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
    "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
    13
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    14
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
!AssignmentNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
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>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    23
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
!AssignmentNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    ^ self shouldNotImplement
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    "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
    31
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    32
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
    33
!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
    34
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
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
    36
    "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
    37
     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
    38
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
    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
    40
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
    "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
    42
! !
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
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    44
!ConfigurableFeatures class methodsFor:'queries-features'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    45
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    46
hasSmallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    47
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    48
    ^UserPreferences current smallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    49
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
     ConfigurableFeatures hasSmallSenseEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    53
     ConfigurableFeatures includesFeature:'SmallSenseEnabled'
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    54
    "
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
    "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
    57
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
    58
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    59
!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
    60
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    61
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
    62
    "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
    63
     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
    64
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    65
    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
    66
        (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
    67
            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
    68
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    69
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    70
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
    71
    ^ 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
    72
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    73
    "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
    74
    "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
    75
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
    76
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    77
!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
    78
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    79
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
    80
    "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
    81
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    82
    <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
    83
    "
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    84
    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
    85
    "
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    86
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    87
    | dialog |
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
    88
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
    89
    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
    90
        ^ 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
    91
    ].
367
bd7749edb1c6 Decoupling search logic from dialogs (part 2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 366
diff changeset
    92
    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
    93
    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
    94
    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
    95
    (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
    96
        initialTextOrNil isEmpty ifTrue:[
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    97
            suggestions size == 1 ifTrue:[
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    98
                dialog pattern:   suggestions anElement. 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
    99
                dialog selection: suggestions anElement. 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   100
            ].
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   101
        ] ifFalse:[ 
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   102
            dialog pattern: initialTextOrNil.
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   103
            dialog selection: initialTextOrNil.
58f383e9a862 AbstractSearchDialog splitted into AbstractListDialog and AbstractSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 364
diff changeset
   104
        ]
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   105
    ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   106
    ^ dialog open.
342
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
   107
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   108
    "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
   109
    "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
   110
    "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
   111
! !
1d0f835b2d9d Integrated SmallSense package dialog to DialogBox. UI fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 340
diff changeset
   112
137
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   113
!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
   114
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   115
autoIndent
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
! !
12232e62cf54 Fixes in electring snippets (both in API and Smalltalk snippets)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   118
279
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   119
!EditTextViewCompletionSupport methodsFor:'queries'!
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   120
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   121
isCompletionViewShown
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   122
    ^ 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
   123
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   124
    "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
   125
! !
1dcaf8e06968 Improvement in JavaEditSupport - indent when return is pressed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 275
diff changeset
   126
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   127
!HTMLDocumentView methodsFor:'actions'!
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   128
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   129
doQuickFix: quickFixNo
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   130
    | app |
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   131
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   132
    app := self application.
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   133
    app notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   134
	app doQuickFix: quickFixNo
16
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   135
    ].
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
    "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
   138
! !
900fdba78fb2 Lint checking improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   139
395
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   140
!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
   141
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   142
preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   143
    "/ 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
   144
    "/ 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
   145
    "/ InspectorView...
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   146
    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
   147
        | completion support |
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   148
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   149
        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
   150
        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
   151
        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
   152
        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
   153
        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
   154
    ].
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   155
    super preRealize
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   156
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   157
    "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
   158
! !
25ed27eaeaae Completion: added support for SmallSense completion in an inspector views.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
   159
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
!MessageNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
    aBlock value: #receiver value: receiver.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
    argArray notNil ifTrue:[
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   166
	argArray withIndexDo:[:node :idx|
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   167
	    aBlock value: 'arg[' , idx printString , ']' value: node
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   168
	]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
    ]
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
    "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
   172
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   173
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   174
!MessageNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   175
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   176
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   177
    navigator navigateToMessageNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   178
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   179
    "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
   180
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   181
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   182
!Method methodsFor:'inspecting'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   183
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
   184
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
   185
    <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
   186
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   187
    ^ (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
   188
        label:'Parse Tree (RB)';
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   189
        priority:35;
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   190
        application:
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   191
                [
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
   192
                    | 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
   193
ad653f664e59 Added RB parse 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
                    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
   195
                    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
   196
                    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
   197
                ];
ad653f664e59 Added RB parse 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
        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
   199
ad653f664e59 Added RB parse 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
    "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
   201
! !
ad653f664e59 Added RB parse 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
!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
   204
ad653f664e59 Added RB parse 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
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
   206
    <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
   207
ad653f664e59 Added RB parse 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
    ^ (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
   209
        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
   210
        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
   211
        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
   212
                [
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   213
                    | src parser |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   214
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   215
                    src := self source.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   216
                    parser := self parserClass parseMethod: src.
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   217
                    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
   218
                ];
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   219
        yourself
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   220
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
   221
    "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
   222
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   223
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
!ParseErrorNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
    "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
   228
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
   229
    ^ 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
   230
        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
   231
    ]
60
0daf99c34c5e Initial support for syntax-error tolerant parsing of Smalltalk.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 51
diff changeset
   232
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
   233
    "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
   234
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   235
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
!ParseNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
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
   238
childNamesAndValuesDo:aBlock
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
    "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
   240
     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
   241
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
   242
    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
   243
        | 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
   244
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
        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
   246
        (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
   247
            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
   248
        ] 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
   249
            (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
   250
                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
   251
                    (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
   252
                        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
   253
                    ]
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
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
    "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
   260
    "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
   261
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   262
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   263
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
    | t |
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
    t := self objectAttributeAt:#inferedType.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   269
    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
   270
    ^t
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
    "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
   273
    "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
   274
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   275
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
!ParseNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
    ^ self objectAttributeAt:#inferedType put: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
    "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
   283
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   284
291
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   285
!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
   286
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   287
inspector2TabSTXParseTreeInspector
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   288
    <inspector2Tab>
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   289
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   290
    ^ (self newInspector2Tab)
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   291
        label:'Parse Tree (ST/X)';
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   292
        priority:36;
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   293
        application:
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   294
                [
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   295
                    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
   296
                ];
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   297
        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
   298
ad653f664e59 Added RB parse 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
    "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
   300
! !
ad653f664e59 Added RB parse 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
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
!ParseNode methodsFor:'testing'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
isSelector
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
    "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
   306
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
    ^ false
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
    "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
   310
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   311
102
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   312
!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
   313
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   314
navigateToUsing:navigator
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   315
    "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
   316
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   317
    "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
   318
! !
538fc4ef040c CodeNavigation service refactored to support Java (not yet done, though)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 101
diff changeset
   319
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
   320
!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
   321
ad653f664e59 Added RB parse 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
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
   323
    <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
   324
ad653f664e59 Added RB parse 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
    ^ (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
   326
        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
   327
        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
   328
        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
   329
                [
ad653f664e59 Added RB parse 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
                    | 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
   331
ad653f664e59 Added RB parse 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
                    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
   333
                        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
   334
                    ].
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   335
                    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
   336
                ];
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   337
        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
   338
ad653f664e59 Added RB parse 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
    "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
   340
! !
ad653f664e59 Added RB parse 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
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
!PrimaryNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
childNamesAndValuesDo:aBlock
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
    "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
   347
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
    "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
   349
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   350
150
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   351
!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
   352
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   353
inferedType
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   354
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   355
    ^ 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
   356
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   357
    "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
   358
! !
f3e694a9aa12 Added PrimitiveNode>>inferredType as ingerited version is does not work.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 147
diff changeset
   359
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
   360
!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
   361
ad653f664e59 Added RB parse 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
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
   363
    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
   364
        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
   365
    ].
ad653f664e59 Added RB parse 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
    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
   367
        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
   368
    ]
ad653f664e59 Added RB parse 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
    "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
   371
! !
ad653f664e59 Added RB parse 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
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   373
!RBContainsSmalltalkXEOLCommentRule methodsFor:'accessing'!
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   374
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   375
fixes: fixer
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   376
    | changes |
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   377
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   378
    changes := self changes.
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   379
    changes notEmptyOrNil ifTrue:[
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   380
        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
   381
            rule: self;
299
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   382
            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
   383
            action: [ fixer apply:
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   384
                ((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
   385
            ].
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
    "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
   389
    "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
   390
! !
8fb1a71e54f2 Add a quickfix to Smalltalk/X EOL comment rule
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 291
diff changeset
   391
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   392
!RBLintRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   393
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   394
fixes: aSmallSenseQuickFixer
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   395
    "Adds all possible code fixes to given quick fixer.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   396
     Default is to do nothing, meaning that there are
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   397
     no quickfixes available"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   398
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   399
    "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
   400
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   401
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
   402
!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
   403
ad653f664e59 Added RB parse 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
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
   405
    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
   406
        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
   407
    ].
ad653f664e59 Added RB parse 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
    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
   409
        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
   410
    ]
ad653f664e59 Added RB parse 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
    "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
   413
    "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
   414
! !
ad653f664e59 Added RB parse 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
!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
   417
ad653f664e59 Added RB parse 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
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
   419
ad653f664e59 Added RB parse 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
    "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
   421
     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
   422
ad653f664e59 Added RB parse 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
    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
   424
        | 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
   425
ad653f664e59 Added RB parse 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
        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
   427
            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
   428
            (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
   429
                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
   430
            ] 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
   431
                (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
   432
                    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
   433
                        (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
   434
                            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
   435
                        ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   436
                    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   437
                ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   438
            ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   439
        ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   440
    ]
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   441
ad653f664e59 Added RB parse 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
    "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
   443
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   444
ad653f664e59 Added RB parse 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
!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
   446
ad653f664e59 Added RB parse 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
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
   448
    ^ 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
   449
ad653f664e59 Added RB parse 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
    "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
   451
! !
ad653f664e59 Added RB parse tree support for parse tree inspector. Added tree inspector tab to many objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 289
diff changeset
   452
ad653f664e59 Added RB parse 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
!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
   454
ad653f664e59 Added RB parse 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
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
   456
    ^ 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
   457
ad653f664e59 Added RB parse 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
    "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
   459
! !
ad653f664e59 Added RB parse 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
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   461
!RBTransformationRule methodsFor:'accessing'!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   462
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   463
fixes: fixer
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   464
    | changes |
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   465
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   466
    changes := self changes.
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   467
    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
   468
        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
   469
            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
   470
            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
   471
            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
   472
                ((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
   473
            ].
17
8443d79a77ac Improvements in background lint checker
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   474
    ]
9
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   475
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
   476
    "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
   477
    "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
   478
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   479
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   480
!ReturnNode methodsFor:'enumeration'!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   481
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   482
childNamesAndValuesDo:aBlock
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   483
    aBlock value: 'expression' value: expression.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   484
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   485
    "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
   486
! !
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   487
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
!StatementNode methodsFor:'enumeration'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
childNamesAndValuesDo:aBlock
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   491
    | stmt index |
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   492
    stmt := self.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   493
    index := 1.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   494
    [ stmt notNil ] whileTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   495
        | expr |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   496
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   497
        stmt isReturnNode ifTrue:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   498
            expr := stmt.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   499
        ] ifFalse:[
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   500
            expr := stmt expression.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   501
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   502
        aBlock value: ('statement[%1]' bindWith: index) value: expr.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   503
        stmt := stmt nextStatement.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   504
        index := index + 1.
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   505
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   507
    "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
   508
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   509
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
!StatementNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
    ^ expression inferedType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
    "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
   517
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   518
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   519
!StatementNode methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   521
inferedType: aSmallSenseType
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
    ^ self shouldNotImplement
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
    "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
   526
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   527
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   528
!Tools::CodeCompletionService class methodsFor:'instance creation'!
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   529
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   530
new
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   531
    "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
   532
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   533
    ^ (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
   534
308
8a605d737807 Removed all but one swizzled methods.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 299
diff changeset
   535
    "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
   536
    "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
   537
! !
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
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
   539
!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
   540
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
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
   542
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   543
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   544
    ^ (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
   545
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
    "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
   547
    "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
   548
! !
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
!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
   551
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   552
new
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   553
    "return an initialized instance"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   554
99
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   555
    ^ (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
   556
6943778c2db7 SyntaxHighlightingService renamed to CodeHighlightingService to match those in tools.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 98
diff changeset
   557
    "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
   558
    "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
   559
! !
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
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   561
!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
   562
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   563
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
   564
    "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
   565
     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
   566
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   567
    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
   568
        (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
   569
            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
   570
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   571
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   572
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   573
    ^ 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
   574
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   575
    "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
   576
    "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
   577
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   578
311
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   579
!Tools::LintService methodsFor:'event handling'!
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   580
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   581
buttonPress:button x:x y:y in:view 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   582
    |lineNr|
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   583
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   584
    view == gutterView ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   585
        button == 1 ifTrue:[
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   586
            lineNr := textView yVisibleToLineNr:y.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   587
            lineNr notNil ifTrue:[ 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   588
                ^ self showInfoWindowForLine: lineNr 
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   589
            ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   590
            ^ false.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   591
        ].
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
    ^ false
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   594
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   595
    "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
   596
    "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
   597
! !
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
!Tools::LintService methodsFor:'private'!
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   600
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   601
showInfoWindowForLine: lineNo
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   602
    | ann |
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   603
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   604
    ann := self annotationAtLine: lineNo.
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   605
    ann isNil ifTrue:[ ^ false ].
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   606
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   607
    SmallSense::CriticsWindow new
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   608
        rule: ann rule;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   609
        codeView: codeView;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   610
        allButOpen;
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   611
        openWindowAt: (Screen current pointerPosition - (20@20)).
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   612
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   613
    ^true
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   614
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   615
    "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
   616
    "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
   617
! !
368ff7243ade Cleanup in SmalltalkLintService
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 308
diff changeset
   618
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   619
!Tools::NavigationState methodsFor:'aspects - SmallSense'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   620
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   621
stx_goodies_smallsense_selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   622
    <swizzle: #selectedClasses>
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   623
    selectedClasses isNil ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   624
        selectedClasses := nil asValue.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   625
        (ConfigurableFeatures includesFeature:'SmallSenseEnabled') ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   626
            selectedClasses
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   627
                onChangeEvaluate:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   628
                    selectedClasses value ? #() do:[:cls |
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   629
                        (Smalltalk at:#'SmallSense::Manager') instance updateInfoForClass:cls.
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   630
                    ].
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   631
                ]
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   632
        ]
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
    ^ selectedClasses
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   635
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   636
    "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
   637
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 63
diff changeset
   638
383
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   639
!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
   640
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   641
processShortcut: aKeyPressEvent
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   642
    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
   643
        aKeyPressEvent isKeyPressEvent ifTrue:[
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   644
            (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
   645
                self searchMenuOpenNavigatorOnDeclarations.
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   646
                ^ true
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   647
            ].
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
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
   650
    ^ 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
   651
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   652
    "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
   653
    "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
   654
! !
e3400ab65300 Navigator: Use #processShortcut: instead swizzling #processEvent: in system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 380
diff changeset
   655
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
   656
!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
   657
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
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
   659
    "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
   660
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   661
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
   662
    ^ [: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
   663
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
    "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
   665
! !
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
377
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   667
!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
   668
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   669
searchMenuOpenNavigatorOnDeclarations
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   670
    "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
   671
     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
   672
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   673
    | result |    
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   674
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
   675
    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
   676
    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
   677
        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
   678
        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
   679
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   680
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   681
    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
   682
        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
   683
        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
   684
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   685
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   686
    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
   687
        (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
   688
            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
   689
                  sortBy:#class 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   690
                  in:#newBuffer 
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   691
                  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
   692
        ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   693
        ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   694
    ].
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   695
    ^ self
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   696
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   697
    "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
   698
    "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
   699
! !
c686ea588575 Initial support for search steps in navigator. Navugator shortcut changed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 373
diff changeset
   700
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
   701
!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
   702
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   703
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
   704
    "/sorry, no method search yet"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   705
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
   706
    ^ 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
   707
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
    "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
   709
    "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
   710
! !
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
!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
   713
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
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
   715
    "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
   716
     standard DoWhatIMeanSupport"
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   717
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
   718
    ^ [: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
   719
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   720
    "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
   721
    "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
   722
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   723
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
!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
   725
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   726
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
   727
    ^ (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
   728
        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
   729
        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
   730
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
    "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
   732
    "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
   733
! !
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
!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
   736
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   737
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
   738
    | 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
   739
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   740
    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
   741
        ^ #( '' #() )
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
    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
   744
    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
   745
        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
   746
    ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   747
    env := 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
   748
    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
   749
    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
   750
    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
   751
        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
   752
    ] 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
   753
        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
   754
    ].
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
    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
   756
    [
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
        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
   758
    ] 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
   759
        matches := OrderedCollection new.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   760
        env
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   761
            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
   762
                | 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
   763
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   764
                cls := env at:nm.
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   765
                (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
   766
                        ifTrue:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   767
                            "cls isJavaClass"false ifTrue:[
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   768
                                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
   769
                                    (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
   770
                                        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
   771
                                    ].
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
                            ] ifFalse:[
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   774
                                (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
   775
                                    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
   776
                                ].
51c4ee46f5c0 Support for completion of Java catch clause (completes exception classes)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 255
diff changeset
   777
                            ]
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
   778
                        ].
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
        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
   781
    ].
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
    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
   783
        ^ #( 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
   784
    ] ifFalse:[
289
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   785
        matches := matches
5c2cffd3c13c Swizzling refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 279
diff changeset
   786
                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
   787
                    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
   788
                ].
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   789
        ^ {
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
            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
   791
            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
   792
        }
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
    "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
   796
    "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
   797
! !
5c835893f71b New class search completion for browser's search bar moved to SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   798
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   799
!Tools::NewSystemBrowser methodsFor:'private-dialogs-SmallSense'!
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   800
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   801
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
   802
    "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
   803
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   804
    <swizzle: #askForMethodCategory:title:okLabel:list:recentList:initialAnswer:>
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   805
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   806
    | dialog |
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   807
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   808
    UserPreferences current smallSenseNewDialogsEnabled ifFalse:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   809
        ^ 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
   810
    ].
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   811
    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
   812
    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
   813
    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
   814
    dialog addButtonAcceptWithLabel: (resources string: okLabel).  
368
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   815
    initialText notNil ifTrue:[ 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   816
        dialog pattern: initialText.
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   817
        dialog selection: initialText. 
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   818
    ].
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   819
    ^ dialog open
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   820
    "
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   821
    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
   822
    "
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
    "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
   825
    "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
   826
! !
a94d9afd766b Introduced a ProtocolSelectDialog...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   827
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   828
!Tools::NewSystemBrowser class methodsFor:'utilities'!
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   829
359
c9f69a8e441c Merged c53e9ee72f71 and 5c2cffd3c13c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 354 289
diff changeset
   830
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
   831
    "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
   832
     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
   833
     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
   834
     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
   835
     Moved from instance protocol for better reusability."
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   836
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   837
    <swizzle: #askForClassToSearch:single:msgTail:resources:filter:forBrowser:thenDo:>
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   838
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   839
    |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
   840
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   841
    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
   842
        ^ 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
   843
    ].
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
   844
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   845
    resources := resourcesOrNil ? self classResources.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   846
    showFullNameHolder := (LastClassSearchBoxShowedFullName ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   847
    onlyShowJavaClassesHolder := (LastClassSearchBoxShowedJavaOnly ? false) asValue.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   848
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   849
    doWhat := doWhatByDefault.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   850
    canFind := aBrowserOrNil notNil
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   851
               and:[aBrowserOrNil navigationState notNil and:[ aBrowserOrNil navigationState isFullBrowser ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   852
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   853
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   854
        title := 'Select a class'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   855
        boxLabel := (resources string:'Select a class').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   856
        okText := 'OK'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   857
        okText2 := nil. doWhat2 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   858
        okText3 := nil. doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   859
    ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   860
        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
   861
        boxLabel := (resources string:'Browse or Search').
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   862
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   863
        (doWhat isNil and:[canFind not]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   864
            doWhat := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   865
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   866
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   867
        doWhat == #newBrowser ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   868
            okText := 'Open New Window'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   869
            okText2 := 'Open New Buffer'. doWhat2 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   870
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   871
        ] ifFalse:[ doWhat == #newBuffer ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   872
            okText := 'Open New Buffer'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   873
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   874
            okText3 := 'Open'.       doWhat3 := nil.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   875
        ] ifFalse:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   876
            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
   877
            okText := 'Open'.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   878
            okText2 := 'Open New Window'.   doWhat2 := #newBrowser.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   879
            okText3 := 'Open New Buffer'. doWhat3 := #newBuffer.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   880
        ]].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   881
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   882
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   883
    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
   884
    box multiselect: true.
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   885
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   886
    "button3" "okButton" "button2" "cancel"
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   887
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   888
    box addButtonCancel.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   889
    doWhat notNil ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   890
        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
   891
        (aBrowserOrNil notNil and:[aBrowserOrNil navigationState isFullBrowser]) "singleClass" ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   892
            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
   893
        ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   894
        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
   895
    ] ifFalse:[
330
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   896
        box addButtonAccept.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   897
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   898
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   899
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   900
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   901
    classes := box open.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   902
    classes isEmptyOrNil ifTrue:[ ^ nil ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   903
    self assert: classes size == 1.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   904
    className := classes anElement name.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   905
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   906
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   907
    LastClassSearchBoxShowedFullName := showFullNameHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   908
    LastClassSearchBoxShowedJavaOnly := onlyShowJavaClassesHolder value.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   909
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   910
    (doWhat isNil or:[aBrowserOrNil isNil]) ifTrue:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   911
        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
   912
        ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   913
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   914
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   915
    aBrowserOrNil withSearchCursorDo:[
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   916
        aBlock value:className value:singleClass value:doWhat.
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   917
    ].
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   918
    ^ className
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   919
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   920
    "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
   921
    "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
   922
! !
055633bb5ceb More work on ClassSearchDialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
   923
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   924
!UserPreferences methodsFor:'accessing-SmallSense'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   925
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   926
smallSenseBackgroundLintEnabled
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   927
    "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
   928
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   929
    ^self at:#smallSenseBackgroundLintEnabled ifAbsent:[false]
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   930
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   931
    "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
   932
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   933
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   934
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   935
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   936
smallSenseBackgroundLintEnabled: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   937
    "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
   938
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   939
    ^self at:#smallSenseBackgroundLintEnabled put: aBoolean
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   940
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   941
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   942
	UserPreferences current smallSenseBackgroundLintEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   943
	UserPreferences current smallSenseBackgroundLintEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   944
	UserPreferences current smallSenseBackgroundLintEnabled: false
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   945
    "
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   946
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   947
    "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
   948
! !
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   949
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   950
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   951
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   952
smallSenseBackgroundTypingEnabled
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   953
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   954
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   955
    ^self at:#smallSenseBackgroundTypingEnabled ifAbsent:[false]
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   956
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   957
    "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
   958
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   959
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   960
!UserPreferences methodsFor:'accessing-SmallSense'!
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   961
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   962
smallSenseBackgroundTypingEnabled: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   963
    "Return true if SmallSense background source checking is enabled"
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   964
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   965
    ^self at:#smallSenseBackgroundTypingEnabled put: aBoolean
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   966
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   967
    "
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   968
	UserPreferences current smallSenseBackgroundTypingEnabled
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   969
	UserPreferences current smallSenseBackgroundTypingEnabled: true
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
   970
	UserPreferences current smallSenseBackgroundTypingEnabled: false
11
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   971
    "
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   972
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   973
    "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
   974
! !
17938f618c57 Added settings application
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 9
diff changeset
   975
5
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   976
!UserPreferences methodsFor:'accessing-SmallSense'!
9b296f3ad0a4 Added code critics (lint) window
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   977
154
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   978
smallSenseCompleteIfUnambiguous
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   979
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   980
    ^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
   981
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   982
    "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
   983
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   984
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   985
!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
   986
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   987
smallSenseCompleteIfUnambiguous: aBoolean
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   988
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   989
    ^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
   990
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   991
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   992
    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
   993
    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
   994
    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
   995
    "
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   996
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   997
    "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
   998
! !
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
   999
b96fbde91144 Support for auto-completion of unambigous items (such as instvars)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 150
diff changeset
  1000
!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
  1001
177
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1002
smallSenseCompletionEnabled
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1003
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1004
    ^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
  1005
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1006
    "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
  1007
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1008
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1009
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1010
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1011
smallSenseCompletionEnabled: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1012
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1013
    ^self at:#smallSenseCompletionEnabled put: aBoolean
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1014
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1015
    "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
  1016
! !
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1017
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1018
!UserPreferences methodsFor:'accessing-SmallSense'!
be588b60f4b2 Added preference to enable/disable SmallSense completion.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 176
diff changeset
  1019
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1020
smallSenseEnabled
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1021
    "Return true if SmallSense is enabled"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1022
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1023
    ^self at:#smallSenseEnabled ifAbsent:[false]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1024
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1025
    "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
  1026
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1027
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1028
!UserPreferences methodsFor:'accessing-SmallSense'!
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1029
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1030
smallSenseEnabled: aBoolean
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1031
    "enable/disable SmallSense"
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1032
23
75fba0a79b3f Fixes UserPreferences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 20
diff changeset
  1033
    ^self at:#smallSenseEnabled put: aBoolean.
20
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1034
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1035
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1036
    UserPreferences current smallSenseEnabled.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1037
    UserPreferences current smallSenseEnabled: true.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1038
    UserPreferences current smallSenseEnabled: false.
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1039
    "
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1040
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1041
    "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
  1042
! !
65bee305e13f Added UserPreferences>>smallSenseEnabled:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
  1043
362
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1044
!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
  1045
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1046
smallSenseNewDialogsEnabled
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1047
    ^ 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
  1048
        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
  1049
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1050
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1051
    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
  1052
    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
  1053
    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
  1054
    "
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1055
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1056
    "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
  1057
    "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
  1058
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1059
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1060
!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
  1061
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1062
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
  1063
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1064
    ^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
  1065
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1066
    "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
  1067
! !
b34840b66447 New dialogs hooked in more places. Respect preferences. Minor UI fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 361
diff changeset
  1068
255
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1069
!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
  1070
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1071
smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1072
    "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
  1073
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1074
    ^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
  1075
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1076
    "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
  1077
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1078
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1079
!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
  1080
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1081
smallSenseSmalltalkIndentOnPasteEnabled: aBoolean
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1082
    "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
  1083
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1084
    ^ 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
  1085
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1086
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1087
    UserPreferences current smallSenseSmalltalkIndentOnPasteEnabled
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1088
    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
  1089
    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
  1090
    "
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1091
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1092
    "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
  1093
! !
c32b4a6595d6 Added preference to enable / disable indent-on-paste feature.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
  1094
444
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1095
!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
  1096
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1097
smallSenseSmalltalkIterationVariableNameMaxLength
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1098
    "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
  1099
     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
  1100
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1101
    ^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
  1102
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1103
    "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
  1104
    "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
  1105
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1106
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1107
!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
  1108
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1109
smallSenseSmalltalkIterationVariableNameMaxLength: anInteger
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1110
    "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
  1111
     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
  1112
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1113
    ^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
  1114
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1115
    "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
  1116
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1117
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1118
!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
  1119
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1120
smallSenseSmalltalkIterationVariableNamePrefixWithEach
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1121
    "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
  1122
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1123
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1124
    ^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
  1125
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1126
    "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
  1127
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1128
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1129
!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
  1130
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1131
smallSenseSmalltalkIterationVariableNamePrefixWithEach: aBoolean
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1132
    "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
  1133
     persons -> eachPerson."
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1134
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1135
    ^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
  1136
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1137
    "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
  1138
! !
a47f43af21d6 Smalltalk electric snippets: make iterator variable naming logic more configurable
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 423
diff changeset
  1139
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1140
!VariableNode methodsFor:'queries'!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1141
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1142
isGlobalOrPrivateClass
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1143
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1144
    ^ type == #GlobalVariable or:[type == #PrivateClass]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1145
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1146
    "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
  1147
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1148
106
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1149
!VariableNode methodsFor:'navigation-SmallSense'!
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1150
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1151
navigateToUsing: navigator
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1152
    navigator navigateToVariableNode: self.
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1153
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1154
    "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
  1155
! !
1ab781eac004 Even more support for Java
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
  1156
378
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1157
!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
  1158
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1159
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
  1160
    "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
  1161
     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
  1162
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1163
    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
  1164
       (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
  1165
            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
  1166
            ^ true
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1167
        ].    
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1168
    ].
392
94ab746c648a Navigator: allow for customization of shortcut to open navigator
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 391
diff changeset
  1169
    ^ 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
  1170
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1171
    "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
  1172
    "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
  1173
! !
359fd8380abd Added shortcut to open navigator to debugger, inspector and workspace.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 377
diff changeset
  1174
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
  1175
!stx_goodies_smallsense class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1176
29
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1177
extensionsVersion_HG
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1178
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
  1179
    ^ '$Changeset: <not expanded> $'
34
5be71b1d52ec SmallSenseResultItem ranemd to SmallSensePO.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
  1180
! !