SmallSense__CriticsWindow.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 25 Oct 2017 23:42:41 +0100
changeset 1058 6d4bf422a7dd
parent 890 8b5b97bb5c8f
child 1072 a44c741ee5ef
permissions -rw-r--r--
Fix subscript out of bounds error in Smalltalk inderences ...caused by missing size-check when analysing typed prefix.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     1
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     2
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
374
e65bd2bf892a Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
     3
Copyright (C) 2013-2015 Jan Vrany
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     4
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     5
This library is free software; you can redistribute it and/or
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     7
License as published by the Free Software Foundation; either
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     8
version 2.1 of the License. 
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     9
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    10
This library is distributed in the hope that it will be useful,
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    13
Lesser General Public License for more details.
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    14
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    16
License along with this library; if not, write to the Free Software
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    18
"
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 183
diff changeset
    19
"{ Package: 'stx:goodies/smallsense' }"
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
"{ NameSpace: SmallSense }"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
183
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
    23
SimpleDialog subclass:#CriticsWindow
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
	instanceVariableNames:'ruleHolder ruleRationaleAndFixesHTMLHolder rationalView fixer
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    25
		entered codeView closeOnLeave'
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
	classVariableNames:''
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	poolDictionaries:''
67
020b7461b15e Package structure reorganization.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    28
	category:'SmallSense-Core-Interface'
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    31
!CriticsWindow class methodsFor:'documentation'!
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    32
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    33
copyright
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    34
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    35
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
374
e65bd2bf892a Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 315
diff changeset
    36
Copyright (C) 2013-2015 Jan Vrany
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    37
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    38
This library is free software; you can redistribute it and/or
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    39
modify it under the terms of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    40
License as published by the Free Software Foundation; either
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    41
version 2.1 of the License. 
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    42
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    43
This library is distributed in the hope that it will be useful,
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    44
but WITHOUT ANY WARRANTY; without even the implied warranty of
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    45
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    46
Lesser General Public License for more details.
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    47
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    48
You should have received a copy of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    49
License along with this library; if not, write to the Free Software
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    50
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    51
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    52
! !
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    54
!CriticsWindow class methodsFor:'help specs'!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    55
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    56
flyByHelpSpec
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    57
    "This resource specification was automatically generated
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    58
     by the UIHelpTool of ST/X."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    59
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    60
    "Do not manually edit this!! If it is corrupted,
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    61
     the UIHelpTool may not be able to read the specification."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    62
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    63
    "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    64
     UIHelpTool openOnClass:SmallSense::CriticsWindow
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    65
    "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    66
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    67
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    68
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    69
    ^ super flyByHelpSpec addPairsFrom:#(
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    70
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    71
#disableRule
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
    72
'Disable this rule in the future\(for the rest of this session, unless you save the ruleset)'
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    73
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    74
#browseRule
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    75
'Open a browser on the rule'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    76
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    77
)
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    78
! !
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    79
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
!CriticsWindow class methodsFor:'interface specs'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
windowSpec
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    "This resource specification was automatically generated
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
     by the UIPainter of ST/X."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    "Do not manually edit this!! If it is corrupted,
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
     the UIPainter may not be able to read the specification."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    "
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    90
     UIPainter new openOnClass:SmallSense::CriticsWindow andSelector:#windowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    91
     SmallSense::CriticsWindow new openInterface:#windowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    92
     SmallSense::CriticsWindow open
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
    "
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
    95
    <resource: #canvas>
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
    97
    ^ 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    98
    #(FullSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    99
       name: windowSpec
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   100
       window: 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   101
      (WindowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   102
         label: 'SmalllintRuleDetail'
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   103
         name: 'SmalllintRuleDetail'
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   104
         min: (Point 10 10)
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   105
         bounds: (Rectangle 0 0 563 384)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   106
         backgroundColor: (Color 100.0 100.0 75.0)
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   107
         forceRecursiveBackgroundOfDefaultBackground: true
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   108
       )
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   109
       component: 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   110
      (SpecCollection
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   111
         collection: (
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   112
          (ActionButtonSpec
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   113
             label: 'closeIcon'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   114
             name: 'Button4'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   115
             layout: (AlignmentOrigin 0 1 0 0 1 0)
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   116
             visibilityChannel: notCloseOnLeave
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   117
             hasCharacterOrientedLabel: false
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   118
             translateLabel: true
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   119
             model: closeRequest
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   120
           )
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   121
          (HTMLViewSpec
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   122
             name: 'Rationale'
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   123
             layout: (LayoutFrame 0 0 20 0 0 1 -65 1)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   124
             level: 0
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   125
             visibilityChannel: rationaleVisibleHolder
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   126
             hasHorizontalScrollBar: true
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   127
             hasVerticalScrollBar: true
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   128
             miniScrollerHorizontal: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   129
             miniScrollerVertical: true
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   130
             htmlText: ruleRationaleAndFixesHTMLHolder
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   131
             postBuildCallback: setupHTMLView:
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   132
           )
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   133
          (LinkButtonSpec
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   134
             label: 'Disable this Rule'
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   135
             name: 'Button3'
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   136
             layout: (LayoutFrame -1 0 -59 1 -16 1 -30 1)
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   137
             activeHelpKey: disableRule
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   138
             level: 0
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   139
             translateLabel: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   140
             labelChannel: disableRuleString
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   141
             adjust: left
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   142
             model: disableLintRule
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   143
             keepSpaceForOSXResizeHandleH: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   144
           )
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   145
          (LinkButtonSpec
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   146
             name: 'Button1'
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   147
             layout: (LayoutFrame 0 0 -29 1 -16 1 0 1)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   148
             activeHelpKey: browseRule
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   149
             level: 0
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   150
             translateLabel: true
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   151
             labelChannel: ruleNameAspect
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   152
             adjust: left
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   153
             model: browseLintRule
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   154
             keepSpaceForOSXResizeHandleH: true
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
           )
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   156
          )
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   157
        
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   158
       )
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   159
     )
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
!CriticsWindow class methodsFor:'plugIn spec'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
aspectSelectors
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
    "This resource specification was automatically generated
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
     by the UIPainter of ST/X."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
    "Do not manually edit this. If it is corrupted,
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
     the UIPainter may not be able to read the specification."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
    "Return a description of exported aspects;
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
     these can be connected to aspects of an embedding application
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
     (if this app is embedded in a subCanvas)."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
    ^ #(
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
        #ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
      ).
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
!CriticsWindow methodsFor:'accessing'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   183
closeOnLeave
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   184
    "set if used as a flyBy tooltip, which should close automatically.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   185
     false, if used as a modal dialog, which needs explicit close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   186
     The default is false."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   187
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   188
    ^ closeOnLeave ? false
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   189
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   190
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   191
closeOnLeave:aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   192
    "set this if used as a flyBy tooltip, which should close automatically.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   193
     Leave false, if used as a modal dialog, which needs explicit close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   194
     The default is false."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   195
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   196
    closeOnLeave := aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   197
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   198
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
codeView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
    ^ codeView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
codeView:aCodeView2
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
    codeView := aCodeView2.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   207
notCloseOnLeave:aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   208
    ^ self closeOnLeave not
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   209
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   210
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
rule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
    ^self ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
    "Created: / 30-01-2012 / 21:45:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
rule: anRBLintRule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
    ^self ruleHolder value: anRBLintRule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
    "Created: / 30-01-2012 / 21:45:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
!CriticsWindow methodsFor:'actions'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
browseLintRule
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   228
    self browseLintRule:self ruleHolder value
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   229
!
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   231
browseLintRule:rule
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   232
    |ruleClass|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   233
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
    rule isNil ifTrue:[^ self].
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   235
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
    ruleClass := rule class.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
    self close.
890
8b5b97bb5c8f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 886
diff changeset
   238
    SystemBrowser default openInClass:ruleClass selector:#rationale
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
    "Created: / 07-09-2011 / 04:09:38 / cg"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
    "Modified: / 31-01-2012 / 11:30:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   244
disableLintRule
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   245
    |rule|
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   246
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   247
    rule := self ruleHolder value.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   248
    rule isNil ifTrue:[^ self].
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   249
886
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   250
    "/ how do I disable the rule in the current smalllint checker service?
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   251
    "/ for now, a hack: keep a global disabledRules collection, and skip rules which are in it
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   252
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   253
    "/ if multiple rules complained, an anonymous composite rule is created;
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   254
    "/ then disable them all
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   255
    rule isComposite ifTrue:[
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   256
        rule rules do:[:each |
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   257
            SmalltalkChecker disableRule:each class.
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   258
        ].
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   259
    ] ifFalse:[
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   260
        SmalltalkChecker disableRule:rule class.
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   261
    ].
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   262
    self close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   263
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   264
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
doQuickFix: quickFixNo
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
    self closeDownViews.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   267
    "/ cg: why fork here?
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   268
    "[" fixer performFix: quickFixNo "] fork".
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
    "Created: / 16-02-2012 / 14:19:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
!CriticsWindow methodsFor:'aspects'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   275
closeIcon
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   276
    ^ ToolbarIconLibrary removeTab16x16Icon
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   277
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   278
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   279
disableRuleString
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   280
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   281
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   282
    ^ ('Disable this Rule'
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   283
        colorizeAllWith: Color blue)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   284
        actionForAll:[ self disableLintRule]
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   285
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   286
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   287
ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   288
    "return/create the 'ruleHolder' value holder (automatically generated)"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   289
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
    ruleHolder isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   291
        ruleHolder := ValueHolder with: (RBDebuggingCodeLeftInMethodsRule new)
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
    ^ ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
    "Modified: / 30-01-2012 / 21:43:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
ruleHolder:something
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
    "set the 'ruleHolder' value holder (automatically generated)"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   300
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
    |oldValue newValue|
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
    ruleHolder notNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
	oldValue := ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
	ruleHolder removeDependent:self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
    ruleHolder := something.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
    ruleHolder notNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
	ruleHolder addDependent:self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
    newValue := ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
    oldValue ~~ newValue ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
	self update:#value with:newValue from:ruleHolder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   315
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   316
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
ruleNameAspect
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   318
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   319
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
    |holder|
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   322
    (holder := builder bindingAt:#ruleNameAspect) isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   323
        holder := BlockValue
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   324
                    with:[:h |
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   325
                        |text rules|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   326
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   327
                        text := ''.
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   328
                        rules := h isComposite ifTrue:[ h rules ] ifFalse:[ { h } ].
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   329
                        rules 
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   330
                            do:[:each |
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   331
                                |anchor|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   332
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   333
                                "/ h displayString , ' ' , (('[browse]' actionForAll:[ self browseLintRule]) colorizeAllWith:Color blue)
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   334
                                anchor :=
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   335
                                        (('Browse Rule Class (',each class name,')' "displayString")
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   336
                                            colorizeAllWith: Color blue)
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   337
                                                actionForAll:[ self browseLintRule:each ].
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   338
                                text := text , anchor.
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   339
                            ]
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   340
                            separatedBy:[
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   341
                                text := text , '<br>'
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   342
                            ].
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   343
                        text.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
                    ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
                    argument: self ruleHolder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
        builder aspectAt:#ruleNameAspect put:holder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
    ^ holder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   350
    "Modified: / 05-02-2010 / 12:51:30 / Jan Vrany "
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
    "Modified: / 07-09-2011 / 04:54:24 / cg"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
ruleRationaleAndFixesHTMLHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
    "return/create the 'ruleRationaleAndFixesHTMLHolder' value holder (automatically generated)"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
    ruleRationaleAndFixesHTMLHolder isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
        ruleRationaleAndFixesHTMLHolder := ValueHolder new.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
    ^ ruleRationaleAndFixesHTMLHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    "Modified (format): / 01-02-2012 / 10:57:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
!CriticsWindow methodsFor:'change & update'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   367
generateHTMLForRule: rule on: stream
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   368
    | fixes |    
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   369
     stream 
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   370
        nextPutAll: rule name; 
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   371
        nextPutAll:'<P>';  
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   372
        nextPutLine: rule rationale.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   373
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   374
    "/ Generate fixes...
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   375
    rule fixes: fixer.
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   376
    fixes := fixer fixesForRule: rule.
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   377
    fixes isEmptyOrNil ifTrue:[ ^ self ].
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   378
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   379
    stream nextPutAll: '<p>'.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   380
    fixes size > 1 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: 312
diff changeset
   381
        stream nextPutAll: '<br>'.
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   382
        stream nextPutLine: 'Possible fixes:'.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   383
    ].
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   384
    stream nextPutLine:'<ul indent="0">'.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   385
    fixes withIndexDo:[:fix :index|
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   386
        stream
890
8b5b97bb5c8f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 886
diff changeset
   387
            nextPutAll:'<li><a action="doit: linkActionPerformer doQuickFix:';
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   388
            nextPutAll: index printString;
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   389
            nextPutAll:'">';
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   390
            nextPutAll: fix label;
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   391
            nextPutAll:'</a></li>'.
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   392
    ].
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   393
    stream nextPutLine:'</ul>'.
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   394
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   395
    "Created: / 15-12-2014 / 16:49:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   396
    "Modified: / 15-12-2014 / 18:17:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   397
!
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   398
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
update:something with:aParameter from:changedObject
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   400
    "Invoked when an object that I depend upon sends a change notification."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   401
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   402
    changedObject == ruleHolder ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   403
         self updateRationaleAndFixes.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   404
         ^ self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   405
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   406
    super update:something with:aParameter from:changedObject
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   407
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   408
    "Modified: / 01-02-2012 / 10:56:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   409
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   410
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   411
updateRationaleAndFixes
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   412
    | rule html |
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   413
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   414
    rule := self ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   415
    rule isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   416
        fixer := nil.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   417
        html :=  'No rule...'.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   418
    ] ifFalse:[
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   419
        fixer := SmalltalkQuickFixer forView: codeView.
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   420
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   421
        html := String streamContents:[:s|
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   422
            rule isComposite ifFalse:[ 
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   423
                self generateHTMLForRule: rule on: s.
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   424
            ] ifTrue:[ 
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   425
                rule flatten 
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   426
                    do:[:each | self generateHTMLForRule: each on: s. ]
315
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   427
                    separatedBy:[ s nextPutLine: '<hr>' ]
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   428
            ]
0a4845a0c211 Update to catchup changes in libtool: refactoring to support multiple lint warnings at line
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 312
diff changeset
   429
        ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   430
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   431
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   432
    self ruleRationaleAndFixesHTMLHolder value: html
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   433
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   434
    "Created: / 01-02-2012 / 10:56:35 / 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: 312
diff changeset
   435
    "Modified: / 15-12-2014 / 18:18:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   436
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   437
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   438
!CriticsWindow methodsFor:'event processing'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   439
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   440
processEvent: anEvent
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   441
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   442
    anEvent isKeyReleaseEvent ifTrue:[
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   443
        anEvent key == #Escape ifTrue:[
183
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   444
            self closeRequest. "/ closeDownViews.
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   445
            ^true.
183
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   446
        ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   447
    ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   448
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   449
    "/ cg: if this is a modal dialog - do not exit on leave.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   450
    "/ if used as a flyBy, set the closeOnLeave flag.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   451
    self closeOnLeave ifTrue:[
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   452
        anEvent isPointerLeaveEvent ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   453
            anEvent view == self window ifTrue:[
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   454
                self closeRequest. "/ closeDownViews.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   455
                ^true.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
            ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
        ].
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   458
    ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   459
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   460
    ^false
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   461
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   462
    "Created: / 16-02-2012 / 14:09:33 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   463
    "Modified (format): / 31-03-2014 / 16:53:41 / Jan Vrany "
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   464
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   465
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   466
!CriticsWindow methodsFor:'hooks'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   467
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   468
postBuildWith: aBuilder
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   469
    super postBuildWith:aBuilder.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   470
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   471
    aBuilder window allViewBackground:(aBuilder window viewBackground).
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   472
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   473
    entered := false.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   474
    self updateRationaleAndFixes.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   475
    aBuilder window beSlave.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   476
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   477
    "Created: / 03-04-2011 / 10:45:10 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   478
    "Modified: / 16-02-2012 / 14:14:07 / Jan Vrany "
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   479
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   480
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   481
postOpenWith: bldr
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   482
    super postOpenWith: bldr.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   483
    self windowGroup addPreEventHook: self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   484
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   485
    "Created: / 16-02-2012 / 14:09:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   486
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
!CriticsWindow methodsFor:'initialization'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
setupHTMLView:aView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   491
    rationalView := aView.
890
8b5b97bb5c8f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 886
diff changeset
   492
    rationalView linkActionPerformer:self.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   493
    aView painter
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   494
        leftMargin:20;
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   495
        topMargin:5.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   496
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
    "Created: / 04-08-2011 / 18:00:36 / cg"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   498
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
!CriticsWindow class methodsFor:'documentation'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   502
version
886
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   503
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   504
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   505
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   506
version_CVS
886
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   507
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   508
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   509
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
version_HG
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
    ^ '$Changeset: <not expanded> $'
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
version_SVN
886
9699254e4326 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 381
diff changeset
   516
    ^ '$Id$'
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518