Tools__CompilerWarningToDoListEntry.st
author Claus Gittinger <cg@exept.de>
Sun, 01 Feb 2015 14:17:11 +0100
changeset 15150 940d37c7d3ac
parent 8235 e9748aa06cf9
child 12123 4bde08cebd48
child 15337 7fc9c63796a2
permissions -rw-r--r--
class: Tools::ChangeList fixed the following redraw bug in ModelListView (which is already fixed in SelectionInListView): if a colored item is shown with selection, the color attribute should be removed (or relaxed), to avoid drawing the label invisible. I.e. if the text color is blue or grey, and the selection bg is blue. we should draw white-on-blue, instead of blue/grey on blue. For this to work, the info whether drawing a selection must be passed down through the renderer to the item's draw routine.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8235
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     1
"
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     3
              All Rights Reserved
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     4
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     5
 This software is furnished under a license and may be used
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     6
 only in accordance with the terms of that license and with the
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     8
 be provided or otherwise made available to, or used by, any
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
     9
 other person.  No title to or ownership of the software is
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    10
 hereby transferred.
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    11
"
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"{ NameSpace: Tools }"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
ToDoListEntry subclass:#CompilerWarningToDoListEntry
7511
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
    17
	instanceVariableNames:'checkAction className class selector position equalityParameter'
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	classVariableNames:''
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	poolDictionaries:''
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	category:'Interface-Smalltalk-ToDo'
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
8235
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    23
!CompilerWarningToDoListEntry class methodsFor:'documentation'!
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    24
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    25
copyright
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    26
"
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    27
 COPYRIGHT (c) 2006 by eXept Software AG
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    28
              All Rights Reserved
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    29
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    30
 This software is furnished under a license and may be used
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    31
 only in accordance with the terms of that license and with the
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    33
 be provided or otherwise made available to, or used by, any
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    34
 other person.  No title to or ownership of the software is
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    35
 hereby transferred.
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    36
"
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
    37
! !
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
7529
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    39
!CompilerWarningToDoListEntry class methodsFor:'instance creation'!
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    40
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    41
new
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    42
    ^ self basicNew initialize
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    43
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    44
    "Created: / 20-11-2006 / 14:58:52 / cg"
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    45
! !
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
    46
7752
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    47
!CompilerWarningToDoListEntry class methodsFor:'notification'!
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    48
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    49
notifyTodo:msg position:position
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    50
     className:className selector:selector
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    51
     severity:severityOrSeveritySymbol priority:priorityOrPrioritySymbol
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    52
     equalityParameter:equalityParameter checkAction:checkAction
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    53
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    54
    |entry brwsr|
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    55
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    56
    (brwsr := Tools::ToDoListBrowser current) isNil ifTrue:[^ self ].
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    57
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    58
    entry := self new.
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    59
    entry
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    60
        severity:severityOrSeveritySymbol
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    61
        priority:priorityOrPrioritySymbol
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    62
        timestamp:(Timestamp now)
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    63
        message:msg
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    64
        className:className
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    65
        selector:selector
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    66
        checkAction:checkAction
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    67
        equalityParameter:equalityParameter
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    68
        position:position.
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    69
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    70
    (Tools::ToDoNotification notNil and:[Tools::ToDoNotification isHandled]) ifTrue:[
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    71
        Tools::ToDoNotification raiseRequestWith:entry
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    72
    ] ifFalse:[
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    73
        brwsr addEntry:entry
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    74
    ].
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    75
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    76
    "Created: / 15-03-2007 / 18:08:06 / cg"
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    77
! !
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
    78
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
!CompilerWarningToDoListEntry methodsFor:'accessing'!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
className
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
    ^ className
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
    "Created: / 22-10-2006 / 01:39:43 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
className:classNameArg selector:selectorArg checkAction:checkActionArg equalityParameter:equalityParameterArg 
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
    checkAction := checkActionArg.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
    className := classNameArg.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    selector := selectorArg.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
    equalityParameter := equalityParameterArg.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
    "Created: / 22-10-2006 / 01:38:26 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
7645
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
    96
className:classNameArg selector:selectorArg checkAction:checkActionArg equalityParameter:equalityParameterArg position:positionArg
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
    97
    checkAction := checkActionArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
    98
    className := classNameArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
    99
    selector := selectorArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   100
    equalityParameter := equalityParameterArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   101
    position := positionArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   102
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   103
    "Created: / 22-10-2006 / 01:38:26 / cg"
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   104
!
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   105
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
equalityParameter
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
    ^ equalityParameter
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
    "Created: / 21-10-2006 / 21:57:01 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
methodOrClassName
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
    selector isNil ifTrue:[^ className ].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
    ^ className,' ',selector
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
    "Created: / 22-10-2006 / 11:05:21 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
7511
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   119
position
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   120
    ^ position
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   121
!
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   122
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   123
position:something
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   124
    position := something.
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   125
!
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   126
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
problemClass
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
    ^ Smalltalk classNamed:className
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
    "Created: / 21-10-2006 / 21:50:38 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
    "Modified: / 22-10-2006 / 01:39:39 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
problemClassName
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
    ^ className
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
    "Created: / 22-10-2006 / 01:40:11 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
problemMethod
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
    |cls|
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
    selector isNil ifTrue:[^ nil].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
    cls := self problemClass.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
    cls isNil ifTrue:[^ nil].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
    ^ cls compiledMethodAt:selector
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
    "Created: / 22-10-2006 / 02:42:39 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
problemSelector
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    ^ selector
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    "Created: / 21-10-2006 / 21:50:58 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
7645
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   159
severity:severityArg priority:priorityArg timestamp:timestampArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   160
        message:msgArg className:classNameArg selector:selectorArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   161
        checkAction:checkActionArg equalityParameter:equalityParameterArg
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   162
        position:positionArg
7752
f5d194e7eec3 oops - should not need to know about ToDoList
Claus Gittinger <cg@exept.de>
parents: 7734
diff changeset
   163
7645
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   164
    self
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   165
        severity:severityArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   166
        priority:priorityArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   167
        timestamp:timestampArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   168
        message:msgArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   169
    self 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   170
        className:classNameArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   171
        selector:selectorArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   172
        checkAction:checkActionArg 
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   173
        equalityParameter:equalityParameterArg.
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   174
    self
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   175
        position:positionArg
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   176
!
6c31c0308af0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7529
diff changeset
   177
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
update:something with:aParameter from:changedObject
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
    self revalidate.
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    "Created: / 21-10-2006 / 21:28:35 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
! !
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
!CompilerWarningToDoListEntry methodsFor:'duplicate detection'!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
sameAs:anotherEntry
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
    ^ anotherEntry sameAsCompilerWarningToDoListEntry:self
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
    "Created: / 21-10-2006 / 21:38:15 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
sameAsCompilerWarningToDoListEntry:anotherEntry
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
    anotherEntry problemClassName = className ifFalse:[^ false].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
    anotherEntry problemSelector = selector ifFalse:[^ false].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    anotherEntry equalityParameter = equalityParameter ifFalse:[^ false].
7927
897161e4ea04 update fix
Claus Gittinger <cg@exept.de>
parents: 7923
diff changeset
   196
    anotherEntry message = message ifFalse:[^ false].
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
    ^ true
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    "Created: / 21-10-2006 / 21:41:57 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    "Modified: / 22-10-2006 / 01:40:03 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
! !
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
!CompilerWarningToDoListEntry methodsFor:'misc'!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
browse
7734
ad472c84adea *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7732
diff changeset
   206
    |brwsr pos|
7511
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   207
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   208
    brwsr := UserPreferences browserClass 
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   209
        openInClass:(self problemClass) selector:selector.
7734
ad472c84adea *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7732
diff changeset
   210
ad472c84adea *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7732
diff changeset
   211
    (pos := position) isArray ifTrue:[
7923
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   212
        pos := pos first.
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   213
    ] ifFalse:[
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   214
        (pos isKindOf:Interval) ifTrue:[
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   215
            pos := pos start.
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   216
        ]
7734
ad472c84adea *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7732
diff changeset
   217
    ].
7923
90b86eff58de *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7792
diff changeset
   218
7734
ad472c84adea *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7732
diff changeset
   219
    brwsr codeView cursorToCharacterPosition:pos.
7511
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   220
"/    brwsr codeView selectLine:(brwsr codeView cursorLine).
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
    "Created: / 22-10-2006 / 01:38:11 / cg"
7511
02f65c9a5d2e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7446
diff changeset
   223
    "Modified: / 11-11-2006 / 14:49:35 / cg"
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
! !
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
!CompilerWarningToDoListEntry methodsFor:'validation'!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
7732
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   228
checkByReparsing
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   229
    |stillValid|
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   230
7792
0a805d4414cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7752
diff changeset
   231
    Tools::ToDoNotification isNil ifTrue:[^ false].
0a805d4414cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7752
diff changeset
   232
7732
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   233
    stillValid := false.
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   234
    Tools::ToDoNotification handle:[:ex |
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   235
        stillValid := (ex parameter sameAs:self).
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   236
        ex proceed.
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   237
    ] do:[
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   238
        Compiler 
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   239
            compile:(self problemClass compiledMethodAt:selector) source 
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   240
            forClass:(self problemClass)
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   241
            install:false.
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   242
    ].
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   243
    ^ stillValid.
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   244
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   245
    "Created: / 21-10-2006 / 21:31:27 / cg"
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   246
    "Modified: / 20-11-2006 / 15:34:29 / cg"
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   247
!
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   248
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
checkIfClassIsStillValid
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    className notNil ifTrue:[
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
        (Smalltalk classNamed:className) isNil ifTrue:[^ false].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
    ].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    ^ true
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    "Created: / 21-10-2006 / 21:58:26 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
    "Modified: / 22-10-2006 / 01:41:53 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
checkIfSelectorIsStillValid
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
    selector notNil ifTrue:[
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
        (self problemClass compiledMethodAt:selector) isNil ifTrue:[^ false].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
    ].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
    ^ true
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
    "Created: / 21-10-2006 / 21:58:44 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
    "Modified: / 22-10-2006 / 01:40:40 / cg"
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
checkIfStillValid
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
    self checkIfClassIsStillValid ifFalse:[^ false].
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
    self checkIfSelectorIsStillValid ifFalse:[^ false].
7732
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   272
7529
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
   273
    checkAction isNil ifTrue:[
7732
66a04cf94a26 checkIfValid by reparsing
Claus Gittinger <cg@exept.de>
parents: 7645
diff changeset
   274
        ^ self checkByReparsing
7529
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
   275
    ].
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
    ^ (checkAction value:self)
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
    "Created: / 21-10-2006 / 21:31:27 / cg"
7529
ad533058030a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7511
diff changeset
   280
    "Modified: / 20-11-2006 / 15:34:29 / cg"
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
! !
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
!CompilerWarningToDoListEntry class methodsFor:'documentation'!
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
version
8235
e9748aa06cf9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7927
diff changeset
   286
    ^ '$Header: /cvs/stx/stx/libtool/Tools__CompilerWarningToDoListEntry.st,v 1.11 2008-08-20 19:41:29 cg Exp $'
7446
008ffff0126e initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
! !