SmallSense__CriticsWindow.st
author Claus Gittinger <cg@exept.de>
Sun, 26 Feb 2017 15:17:18 +0100
branchcvs_MAIN
changeset 1020 5cc6ac344d41
parent 1018 f1af04fc8403
child 1021 ddbfb17fdd1b
permissions -rw-r--r--
#FEATURE by cg class: SmallSense::CriticsWindow changed: #generateHTMLForRule:on:
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
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   424
      previousRuleClass already|    
946
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:[
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   427
        already := Set new.
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   428
        flattenedRules := OrderedCollection new.
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   429
        rule flatten do:[:each | 
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   430
            (already includes:each) ifFalse:[
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   431
                already add:each.
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   432
                flattenedRules add:each
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   433
            ].
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   434
        ].
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   435
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   436
        "/ 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
   437
        "/ avoid, generating long lists, which all look the same.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   438
        "/ so first, sort them by name.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   439
        flattenedRules sort:[:a :b | a name < b name].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   440
        "/ then in the code below, skip over repeated descriptions
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   441
    ] ifFalse:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   442
        flattenedRules := { rule }.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   443
    ].    
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   444
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   445
    putCollectedFixes := 
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
            collectedFixes notEmptyOrNil ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   448
                stream nextPutAll: '<p>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   449
                collectedFixes size > 1 ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   450
                    stream nextPutAll: '<br>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   451
                    stream nextPutLine: 'Possible fixes:'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   452
                ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   453
                stream nextPutLine:'<ul indent="0">'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   454
                collectedFixes withIndexDo:[:fix :index|
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   455
                    stream
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   456
                        nextPutAll:'<li>';
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   457
                        nextPutAll:'<a action="doit: linkActionPerformer doQuickFix:';
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   458
                        nextPutAll: index printString;
1018
f1af04fc8403 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 995
diff changeset
   459
                        nextPut:$";
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   460
                        "/ nextPutAll:' info="',(fix rule class name),'"';
1018
f1af04fc8403 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 995
diff changeset
   461
                        nextPut:$>;
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   462
                        nextPutAll: fix label;
995
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   463
                        nextPutAll:'</a>';
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   464
                        nextPutAll:' (',(fix rule class name),')';
0191b93a64a6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 993
diff changeset
   465
                        nextPutAll:'</li>'.
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
                stream nextPutLine:'</ul>'.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   468
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   469
        ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   470
        
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   471
    previousRuleClass := nil.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   472
    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
   473
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   474
    flattenedRules 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   475
        do:[:eachRule |
1020
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   476
            |fixesForMe editedMethod editedClass editedSelector resultMethod|
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   477
            
1020
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   478
            editedMethod := codeView editedMethod.
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   479
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   480
            eachRule class == previousRuleClass ifFalse:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   481
                collectedFixes notEmpty ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   482
                    putCollectedFixes value.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   483
                    collectedFixes := OrderedCollection new
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   484
                ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   485
                previousRuleClass notNil ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   486
                    stream nextPutLine: '<hr>'
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   487
                ].    
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   488
                stream 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   489
                    "/ nextPutAll:'<I>',eachRule class name,':</I><BR>'; 
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   490
                    nextPutAll:'<B>',eachRule name,'</B>'; 
1020
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   491
                    nextPutAll:'<P>'.
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   492
                    
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   493
                (editedMethod notNil
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   494
                and:[ eachRule result includesSelector:editedMethod selector in:editedMethod mclass ]) ifTrue:[
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   495
                    stream nextPutLine:(eachRule rationaleWithAnchorForMethod:editedMethod)
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   496
                ] ifFalse:[    
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   497
                    stream nextPutLine: eachRule rationale.
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   498
                ].
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   499
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   500
            
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   501
            "/ Generate fixes...
961
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   502
            "/ BUG: because rules/transformations remember their result,
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   503
            "/ 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
   504
            "/ in the rule's changes list.
69bd32d11520 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 951
diff changeset
   505
            "/ 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
   506
            self breakPoint:#cg.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   507
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   508
            "/ was 
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   509
            "/  eachRule fixes: fixer
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   510
            "/ changed to:
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   511
            editedMethod notNil ifTrue:[
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   512
                editedClass := editedMethod mclass.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   513
                editedSelector := editedMethod selector.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   514
                (editedClass isNil or:[editedSelector isNil]) ifTrue:[
989
fe33765d67a6 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 988
diff changeset
   515
                    Transcript showCR:'CriticsWindow: code in editor is outdated'.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   516
                    ^ self
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   517
                ].    
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   518
            ] ifFalse:[
993
81f5cd10ee50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 989
diff changeset
   519
                self breakPoint:#cg.
81f5cd10ee50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 989
diff changeset
   520
                ^ self.
968
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   521
            ].    
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   522
            eachRule 
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   523
                addFixesForClass:editedClass
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   524
                selector:editedSelector
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   525
                to:fixer.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   526
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   527
            fixesForMe := fixer fixesForRule: eachRule.
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   528
            fixesForMe notEmptyOrNil ifTrue:[
4cd706e4706e #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 961
diff changeset
   529
                collectedFixes addAll:fixesForMe.
946
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   530
            ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   531
            previousRuleClass := eachRule class.
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   532
        ].
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   533
    
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   534
    collectedFixes notEmpty ifTrue:[
78732f808882 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 935
diff changeset
   535
        putCollectedFixes value.
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   536
    ].
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
   537
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
   538
    "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
   539
    "Modified: / 15-12-2014 / 18:17:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1018
f1af04fc8403 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 995
diff changeset
   540
    "Modified: / 17-02-2017 / 10:14:23 / stefan"
1020
5cc6ac344d41 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 1018
diff changeset
   541
    "Modified: / 26-02-2017 / 14:52:29 / cg"
312
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   542
!
ce4e697a363c Few changes in SmallLint Critics Window
Claus Gittinger
parents: 306
diff changeset
   543
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   544
update:something with:aParameter from:changedObject
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   545
    "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
   546
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   547
    changedObject == ruleHolder ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   548
         self updateRationaleAndFixes.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   549
         ^ self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   550
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
    super update:something with:aParameter from:changedObject
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
    "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
   554
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   556
updateRationaleAndFixes
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   557
    | rule html |
64
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
    rule := self ruleHolder value.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   560
    rule isNil ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   561
        fixer := nil.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   562
        html :=  'No rule...'.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   563
    ] 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
   564
        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
   565
417
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   566
        html := 
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   567
            String streamContents:[:s|
418
533f9d396eec class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 417
diff changeset
   568
                self generateHTMLForRule: rule on: s.
417
441e176f9444 class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   569
            ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   570
    ].
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   571
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   572
    self ruleRationaleAndFixesHTMLHolder value: html
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   574
    "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
   575
    "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
   576
! !
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
!CriticsWindow methodsFor:'event processing'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
processEvent: anEvent
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   582
    anEvent isKeyReleaseEvent ifTrue:[
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   583
        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
   584
            self closeRequest. "/ closeDownViews.
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   585
            ^true.
183
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   586
        ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   587
    ].
cfce2733ee7e Allow lint window to be closed by pressing escape.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   588
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   589
    "/ cg: if this is a modal dialog - do not exit on leave.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   590
    "/ if used as a flyBy, set the closeOnLeave flag.
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   591
    self closeOnLeave ifTrue:[
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   592
        anEvent isPointerLeaveEvent ifTrue:[
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   593
            anEvent view == self window ifTrue:[
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   594
                self closeRequest. "/ closeDownViews.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   595
                ^true.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   596
            ]
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   597
        ].
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   598
    ].
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   599
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   600
    ^false
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   601
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   602
    "Created: / 16-02-2012 / 14:09:33 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   603
    "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
   604
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   605
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   606
!CriticsWindow methodsFor:'hooks'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   607
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   608
postBuildWith: aBuilder
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   609
    |window|
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   610
    
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   611
    super postBuildWith:aBuilder.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   612
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   613
    window := aBuilder window.
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   614
    window allViewBackground:(window viewBackground).
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   615
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   616
    entered := false.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
    self updateRationaleAndFixes.
935
f99d1d3a21f9 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 877
diff changeset
   618
    window beSlave.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
306
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   620
    "Created: / 03-04-2011 / 10:45:10 / Jan Vrany "
798ea6162eba Improvements in UI
Claus Gittinger
parents: 252
diff changeset
   621
    "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
   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
postOpenWith: bldr
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 72
diff changeset
   625
    super postOpenWith: bldr.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   626
    self windowGroup addPreEventHook: self.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   627
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   628
    "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
   629
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   630
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
!CriticsWindow methodsFor:'initialization'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   633
setupHTMLView:aView
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
    rationalView := aView.
877
92bce2b53e1f class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   635
    rationalView linkActionPerformer:self.
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
    aView painter
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
        leftMargin:20;
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
        topMargin:5.
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
    "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
   641
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   643
!CriticsWindow class methodsFor:'documentation'!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   644
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   645
version
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   646
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   647
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   648
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   649
version_CVS
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   650
    ^ '$Header$'
321
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   651
!
ba897eeaa755 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   652
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   653
version_HG
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
    ^ '$Changeset: <not expanded> $'
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   656
!
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   657
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   658
version_SVN
873
4716c7d3151a class: SmallSense::CriticsWindow
Claus Gittinger <cg@exept.de>
parents: 460
diff changeset
   659
    ^ '$Id$'
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   660
! !
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   661