SmallSense__CriticsWindow.st
author Claus Gittinger <cg@exept.de>
Sun, 06 Nov 2016 11:25:33 +0100
branchcvs_MAIN
changeset 993 81f5cd10ee50
parent 989 fe33765d67a6
child 995 0191b93a64a6
permissions -rw-r--r--
#REFACTORING by cg class: SmallSense::CriticsWindow changed: #generateHTMLForRule:on: leftover halt.
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
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     3
Copyright (C) 2013-2014 Jan Vrany
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
988
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    24
	instanceVariableNames:'ruleHolder ruleRationaleAndFixesHTMLHolder rationalView fixer
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    25
		entered codeView closeOnLeave'
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    26
	classVariableNames:''
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    27
	poolDictionaries:''
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
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
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    36
Copyright (C) 2013-2014 Jan Vrany
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
988
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    71
#applyRuleIn
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    72
'Apply this rule on more code.'
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
    73
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    74
#disableRule
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
    75
'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
    76
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    77
#browseRule
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    78
'Open a browser on the rule'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    79
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    80
)
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    81
! !
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
    82
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
!CriticsWindow class methodsFor:'interface specs'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
windowSpec
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    "This resource specification was automatically generated
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
     by the UIPainter of ST/X."
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
    "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
    90
     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
    91
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    "
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    93
     UIPainter new openOnClass:SmallSense::CriticsWindow andSelector:#windowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    94
     SmallSense::CriticsWindow new openInterface:#windowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
    95
     SmallSense::CriticsWindow open
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
    "
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
    98
    <resource: #canvas>
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   100
    ^ 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   101
    #(FullSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   102
       name: windowSpec
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   103
       window: 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   104
      (WindowSpec
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   105
         label: 'SmalllintRuleDetail'
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   106
         name: 'SmalllintRuleDetail'
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   107
         min: (Point 10 10)
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   108
         bounds: (Rectangle 0 0 563 384)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   109
         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
   110
         forceRecursiveBackgroundOfDefaultBackground: true
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   111
       )
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   112
       component: 
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   113
      (SpecCollection
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   114
         collection: (
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   115
          (ActionButtonSpec
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   116
             label: 'closeIcon'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   117
             name: 'Button4'
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   118
             layout: (AlignmentOrigin 0 1 0 0 1 0)
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   119
             visibilityChannel: notCloseOnLeave
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   120
             hasCharacterOrientedLabel: false
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   121
             translateLabel: true
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   122
             model: closeRequest
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   123
           )
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   124
          (HTMLViewSpec
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   125
             name: 'Rationale'
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   126
             layout: (LayoutFrame 0 0 20 0 0 1 -65 1)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   127
             level: 0
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   128
             visibilityChannel: rationaleVisibleHolder
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   129
             hasHorizontalScrollBar: true
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   130
             hasVerticalScrollBar: true
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   131
             miniScrollerHorizontal: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   132
             miniScrollerVertical: true
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   133
             htmlText: ruleRationaleAndFixesHTMLHolder
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   134
             postBuildCallback: setupHTMLView:
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   135
           )
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   136
          (LinkButtonSpec
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   137
             label: 'Disable this Rule'
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   138
             name: 'Button3'
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   139
             layout: (LayoutFrame -1 0 -59 1 -16 1 -30 1)
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   140
             activeHelpKey: disableRule
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   141
             level: 0
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   142
             translateLabel: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   143
             labelChannel: disableRuleString
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   144
             adjust: left
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   145
             model: disableLintRule
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   146
             keepSpaceForOSXResizeHandleH: true
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   147
           )
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   148
          (LinkButtonSpec
988
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   149
             label: 'Apply this Rule In...'
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   150
             name: 'Button5'
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   151
             layout: (AlignmentOrigin 0 1 -59 1 1 0)
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   152
             activeHelpKey: applyRuleIn
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   153
             level: 0
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   154
             translateLabel: true
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   155
             labelChannel: applyRuleInString
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   156
             resizeForLabel: true
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   157
             adjust: left
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   158
             model: applyLintRuleIn
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   159
             keepSpaceForOSXResizeHandleH: true
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   160
           )
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   161
          (LinkButtonSpec
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   162
             name: 'Button1'
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   163
             layout: (LayoutFrame 0 0 -29 1 -16 1 0 1)
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   164
             activeHelpKey: browseRule
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   165
             level: 0
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   166
             translateLabel: true
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   167
             labelChannel: ruleNameAspect
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   168
             adjust: left
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   169
             model: browseLintRule
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   170
             keepSpaceForOSXResizeHandleH: true
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
           )
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   172
          )
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   173
        
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   174
       )
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   175
     )
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
! !
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
!CriticsWindow class methodsFor:'plugIn spec'!
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
aspectSelectors
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
    "This resource specification was automatically generated
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
     by the UIPainter of ST/X."
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
    "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
   185
     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
   186
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
    "Return a description of exported aspects;
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
     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
   189
     (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
   190
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
    ^ #(
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
        #ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
      ).
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
!CriticsWindow methodsFor:'accessing'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   199
closeOnLeave
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   200
    "set if used as a flyBy tooltip, which should close automatically.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   201
     false, if used as a modal dialog, which needs explicit close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   202
     The default is false."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   203
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   204
    ^ closeOnLeave ? false
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   205
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   206
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   207
closeOnLeave:aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   208
    "set this if used as a flyBy tooltip, which should close automatically.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   209
     Leave false, if used as a modal dialog, which needs explicit close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   210
     The default is false."
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   211
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   212
    closeOnLeave := aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   213
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   214
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
codeView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
    ^ codeView
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
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
codeView:aCodeView2
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
    codeView := aCodeView2.
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
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   223
notCloseOnLeave:aBoolean
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   224
    ^ self closeOnLeave not
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   225
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   226
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
rule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
    ^self ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
    "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
   232
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
rule: anRBLintRule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
    ^self ruleHolder value: anRBLintRule
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
    "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
   239
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
!CriticsWindow methodsFor:'actions'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
988
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   243
applyLintRuleIn
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   244
    |rule dialog cls pkg|
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   245
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   246
    rule := self ruleHolder value.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   247
    rule isNil ifTrue:[^ self].
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   248
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   249
    cls := codeView textView editedClass.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   250
    cls notNil ifTrue:[
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   251
        pkg := cls package
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   252
    ].    
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   253
    dialog := Tools::SearchDialog new
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   254
        currentClass:cls;
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   255
        currentPackage:pkg;
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   256
        setupToAskForMethodSearchTitle:(resources string:'Apply rule in:')
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   257
        forBrowser:nil
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   258
        searchWhat:nil searchArea:#everywhere
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   259
        withCaseIgnore:false withMatch:false
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   260
        withMethodList:false
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   261
        allowFind:false allowBuffer:false allowBrowser:true
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   262
        withTextEntry:false.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   263
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   264
    [:restart|
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   265
        dialog askThenDo:[
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   266
            |classes methods keepResultList browser|
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   267
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   268
            classes := dialog classesToSearch.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   269
            "/ methods := dialog methodsToSearch.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   270
            browser := Tools::NewSystemBrowser new.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   271
            browser allButOpen.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   272
            browser
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   273
                smalllintRun:ruleHolder value
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   274
                onEnvironment:(ClassEnvironment new
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   275
                                classes:classes;
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   276
                                label:'Lint on more classes').
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   277
            browser openWindow.                
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   278
        ].    
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   279
    ] valueWithRestart.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   280
    self hide.
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   281
!
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   282
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
browseLintRule
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   284
    self browseLintRule:self ruleHolder value
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   285
!
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   286
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   287
browseLintRule:rule
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   288
    |ruleClass|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   289
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
    rule isNil ifTrue:[^ self].
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   291
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
    ruleClass := rule class.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
    self close.
877
92bce2b53e1f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   294
    SystemBrowser default openInClass:ruleClass selector:#rationale
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
    "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
   297
    "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
   298
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   300
disableLintRule
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   301
    |rule|
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   302
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   303
    rule := self ruleHolder value.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   304
    rule isNil ifTrue:[^ self].
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   305
443
3511d16582e6 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 424
diff changeset
   306
    "/ how do I disable the rule in the current smalllint checker service?
460
4343e1369305 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 443
diff changeset
   307
    "/ for now, a hack: keep a global disabledRules collection, and skip rules which are in it
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   308
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   309
    "/ if multiple rules complained, an anonymous composite rule is created;
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   310
    "/ then disable them all
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   311
    rule isComposite ifTrue:[
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   312
        rule rules do:[:each |
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   313
            SmalltalkChecker disableRule:each class.
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   314
        ].
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   315
    ] ifFalse:[
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   316
        SmalltalkChecker disableRule:rule class.
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   317
    ].
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   318
    self close.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   319
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   320
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
doQuickFix: quickFixNo
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   322
    self closeDownViews.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   323
    "/ cg: why fork here?
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   324
    "[" fixer performFix: quickFixNo "] fork".
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   325
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   326
    "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
   327
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   328
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   329
!CriticsWindow methodsFor:'aspects'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   330
988
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   331
applyRuleInString
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   332
    ^ 'Apply this Rule In...' asActionLinkTo:[ self applyLintRuleIn ]
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   333
!
75d5f2c16454 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 968
diff changeset
   334
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   335
closeIcon
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   336
    ^ ToolbarIconLibrary removeTab16x16Icon
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   337
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   338
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   339
disableRuleString
951
28ef86384d3e #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 948
diff changeset
   340
    ^ 'Disable this Rule' asActionLinkTo:[ self disableLintRule]
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   341
!
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   342
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
    "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
   345
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
    ruleHolder isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
        ruleHolder := ValueHolder with: (RBDebuggingCodeLeftInMethodsRule new)
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
    ^ ruleHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
    "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
   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
ruleHolder:something
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
    "set the 'ruleHolder' 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
    |oldValue newValue|
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
    ruleHolder notNil ifTrue:[
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   360
        oldValue := ruleHolder value.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   361
        ruleHolder removeDependent:self.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
    ruleHolder := something.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
    ruleHolder notNil ifTrue:[
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   365
        ruleHolder addDependent:self.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
    newValue := ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
    oldValue ~~ newValue ifTrue:[
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   369
        self update:#value with:newValue from:ruleHolder.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
ruleNameAspect
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   374
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   376
    |holder|
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   378
    (holder := builder bindingAt:#ruleNameAspect) isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   379
        holder := BlockValue
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   380
                    with:[:h |
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   381
                        |text rules|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   382
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   383
                        text := ''.
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   384
                        rules := h isComposite ifTrue:[ h rules ] ifFalse:[ { h } ].
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   385
                        rules 
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   386
                            do:[:each |
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   387
                                |anchor|
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   388
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   389
                                "/ h displayString , ' ' , (('[browse]' actionForAll:[ self browseLintRule]) colorizeAllWith:Color blue)
951
28ef86384d3e #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 948
diff changeset
   390
                                anchor := ('Browse Rule Class (%1)' 
28ef86384d3e #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 948
diff changeset
   391
                                            bindWith:each class name)
28ef86384d3e #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 948
diff changeset
   392
                                                asActionLinkTo:[ self browseLintRule:each ].
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   393
                                text := text , anchor.
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   394
                            ]
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   395
                            separatedBy:[
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   396
                                text := text , '<br>'
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   397
                            ].
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   398
                        text.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
                    ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   400
                    argument: self ruleHolder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   401
        builder aspectAt:#ruleNameAspect put:holder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   402
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   403
    ^ holder.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   404
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   405
    "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
   406
    "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
   407
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   408
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   409
ruleRationaleAndFixesHTMLHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   410
    "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
   411
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   412
    ruleRationaleAndFixesHTMLHolder isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   413
        ruleRationaleAndFixesHTMLHolder := ValueHolder new.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   414
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   415
    ^ ruleRationaleAndFixesHTMLHolder
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   416
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   417
    "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
   418
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   419
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   420
!CriticsWindow methodsFor:'change & update'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   421
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   422
generateHTMLForRule: rule on: stream
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   423
    | flattenedRules collectedFixes putCollectedFixes
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   424
      previousRuleClass |    
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   425
        
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   426
    rule isComposite ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   427
        flattenedRules := OrderedCollection new.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   428
        rule flatten do:[:each | flattenedRules add:each].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   429
        
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   430
        "/ often, multiple instances of the same rule match in a line.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   431
        "/ avoid, generating long lists, which all look the same.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   432
        "/ so first, sort them by name.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   433
        flattenedRules sort:[:a :b | a name < b name].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   434
        "/ then in the code below, skip over repeated descriptions
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   435
    ] ifFalse:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   436
        flattenedRules := { rule }.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   437
    ].    
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   438
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   439
    putCollectedFixes := 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   440
        [
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   441
            collectedFixes notEmptyOrNil ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   442
                stream nextPutAll: '<p>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   443
                collectedFixes size > 1 ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   444
                    stream nextPutAll: '<br>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   445
                    stream nextPutLine: 'Possible fixes:'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   446
                ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   447
                stream nextPutLine:'<ul indent="0">'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   448
                collectedFixes withIndexDo:[:fix :index|
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   449
                    stream
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   450
                        nextPutAll:'<li><a action="doit: linkActionPerformer doQuickFix:';
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   451
                        nextPutAll: index printString;
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   452
                        nextPutAll:'">';
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   453
                        nextPutAll: fix label;
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   454
                        nextPutAll:'</a></li>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   455
                ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   456
                stream nextPutLine:'</ul>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   457
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   458
        ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   459
        
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   460
    previousRuleClass := nil.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   461
    collectedFixes := OrderedCollection new.
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
   462
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   463
    flattenedRules 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   464
        do:[:eachRule |
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   465
            |fixesForMe editedMethod editedClass editedSelector|
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   466
            
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   467
            eachRule class == previousRuleClass ifFalse:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   468
                collectedFixes notEmpty ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   469
                    putCollectedFixes value.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   470
                    collectedFixes := OrderedCollection new
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   471
                ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   472
                previousRuleClass notNil ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   473
                    stream nextPutLine: '<hr>'
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   474
                ].    
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   475
                stream 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   476
                    "/ nextPutAll:'<I>',eachRule class name,':</I><BR>'; 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   477
                    nextPutAll:'<B>',eachRule name,'</B>'; 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   478
                    nextPutAll:'<P>';  
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   479
                    nextPutLine: eachRule rationale.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   480
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   481
            
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   482
            "/ Generate fixes...
961
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   483
            "/ BUG: because rules/transformations remember their result,
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   484
            "/ after a run over a project, there might be changes for many many different classes
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   485
            "/ in the rule's changes list.
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   486
            "/ therefore, the fixer selects only those changes which affect the current method.
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   487
            self breakPoint:#cg.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   488
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   489
            "/ was 
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   490
            "/  eachRule fixes: fixer
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   491
            "/ changed to:
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   492
            editedMethod := codeView editedMethod.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   493
            editedMethod notNil ifTrue:[
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   494
                editedClass := editedMethod mclass.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   495
                editedSelector := editedMethod selector.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   496
                (editedClass isNil or:[editedSelector isNil]) ifTrue:[
989
fe33765d67a6 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 988
diff changeset
   497
                    Transcript showCR:'CriticsWindow: code in editor is outdated'.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   498
                    ^ self
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   499
                ].    
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   500
            ] ifFalse:[
993
81f5cd10ee50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 989
diff changeset
   501
                self breakPoint:#cg.
81f5cd10ee50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 989
diff changeset
   502
                ^ self.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   503
            ].    
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   504
            eachRule 
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   505
                addFixesForClass:editedClass
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   506
                selector:editedSelector
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   507
                to:fixer.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   508
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   509
            fixesForMe := fixer fixesForRule: eachRule.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   510
            fixesForMe notEmptyOrNil ifTrue:[
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   511
                collectedFixes addAll:fixesForMe.
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   512
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   513
            previousRuleClass := eachRule class.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   514
        ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   515
    
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   516
    collectedFixes notEmpty ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   517
        putCollectedFixes value.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   518
    ].
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
   519
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
   520
    "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
   521
    "Modified: / 15-12-2014 / 18:17:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   522
    "Modified: / 1-5-2016  Claus Gittinger"
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   523
!
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   524
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
update:something with:aParameter from:changedObject
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
    "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
   527
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   528
    changedObject == ruleHolder ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   529
         self updateRationaleAndFixes.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   530
         ^ self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   531
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   532
    super update:something with:aParameter from:changedObject
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   533
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   534
    "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
   535
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   536
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   537
updateRationaleAndFixes
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   538
    | rule html |
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   539
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   540
    rule := self ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   541
    rule isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   542
        fixer := nil.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   543
        html :=  'No rule...'.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   544
    ] 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
   545
        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
   546
417
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   547
        html := 
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   548
            String streamContents:[:s|
418
533f9d396eec class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 417
diff changeset
   549
                self generateHTMLForRule: rule on: s.
417
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   550
            ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   553
    self ruleRationaleAndFixesHTMLHolder value: html
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
    "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
   556
    "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
   557
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   558
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   559
!CriticsWindow methodsFor:'event processing'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   560
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   561
processEvent: anEvent
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   562
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   563
    anEvent isKeyReleaseEvent ifTrue:[
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   564
        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
   565
            self closeRequest. "/ closeDownViews.
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   566
            ^true.
183
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   567
        ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   568
    ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   569
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   570
    "/ cg: if this is a modal dialog - do not exit on leave.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   571
    "/ if used as a flyBy, set the closeOnLeave flag.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   572
    self closeOnLeave ifTrue:[
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
        anEvent isPointerLeaveEvent ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   574
            anEvent view == self window ifTrue:[
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   575
                self closeRequest. "/ closeDownViews.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   576
                ^true.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   577
            ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   578
        ].
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   579
    ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
    ^false
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   582
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   583
    "Created: / 16-02-2012 / 14:09:33 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   584
    "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
   585
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   586
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   587
!CriticsWindow methodsFor:'hooks'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   588
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   589
postBuildWith: aBuilder
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   590
    |window|
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   591
    
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   592
    super postBuildWith:aBuilder.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   593
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   594
    window := aBuilder window.
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   595
    window allViewBackground:(window viewBackground).
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   596
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   597
    entered := false.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   598
    self updateRationaleAndFixes.
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   599
    window beSlave.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   600
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   601
    "Created: / 03-04-2011 / 10:45:10 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   602
    "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
   603
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   604
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   605
postOpenWith: bldr
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   606
    super postOpenWith: bldr.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   607
    self windowGroup addPreEventHook: self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   608
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   609
    "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
   610
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   611
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   612
!CriticsWindow methodsFor:'initialization'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
setupHTMLView:aView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   615
    rationalView := aView.
877
92bce2b53e1f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   616
    rationalView linkActionPerformer:self.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
    aView painter
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   618
        leftMargin:20;
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
        topMargin:5.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   620
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   621
    "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
   622
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   623
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   624
!CriticsWindow class methodsFor:'documentation'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   625
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   626
version
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   627
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   628
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   629
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   630
version_CVS
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   631
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   632
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   633
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
version_HG
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
    ^ '$Changeset: <not expanded> $'
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
version_SVN
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   640
    ^ '$Id$'
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   641
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642