Tools__ChangeSetDiffList.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sun, 29 Jan 2012 12:53:39 +0000
branchjv
changeset 12123 4bde08cebd48
parent 10938 2afa554b0227
child 12125 0c49a3b13e43
permissions -rw-r--r--
trunk branched into /branches/jv
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
     1
"
f898a869986e initial checkin
vrany
parents:
diff changeset
     2
 Copyright (c) 2007-2010 Jan Vrany
f898a869986e initial checkin
vrany
parents:
diff changeset
     3
 Copyright (c) 2009-2010 eXept Software AG
f898a869986e initial checkin
vrany
parents:
diff changeset
     4
f898a869986e initial checkin
vrany
parents:
diff changeset
     5
 Permission is hereby granted, free of charge, to any person
f898a869986e initial checkin
vrany
parents:
diff changeset
     6
 obtaining a copy of this software and associated documentation
f898a869986e initial checkin
vrany
parents:
diff changeset
     7
 files (the 'Software'), to deal in the Software without
f898a869986e initial checkin
vrany
parents:
diff changeset
     8
 restriction, including without limitation the rights to use,
f898a869986e initial checkin
vrany
parents:
diff changeset
     9
 copy, modify, merge, publish, distribute, sublicense, and/or sell
f898a869986e initial checkin
vrany
parents:
diff changeset
    10
 copies of the Software, and to permit persons to whom the
f898a869986e initial checkin
vrany
parents:
diff changeset
    11
 Software is furnished to do so, subject to the following
f898a869986e initial checkin
vrany
parents:
diff changeset
    12
 conditions:
f898a869986e initial checkin
vrany
parents:
diff changeset
    13
f898a869986e initial checkin
vrany
parents:
diff changeset
    14
 The above copyright notice and this permission notice shall be
f898a869986e initial checkin
vrany
parents:
diff changeset
    15
 included in all copies or substantial portions of the Software.
f898a869986e initial checkin
vrany
parents:
diff changeset
    16
f898a869986e initial checkin
vrany
parents:
diff changeset
    17
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
f898a869986e initial checkin
vrany
parents:
diff changeset
    18
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
f898a869986e initial checkin
vrany
parents:
diff changeset
    19
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
f898a869986e initial checkin
vrany
parents:
diff changeset
    20
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
f898a869986e initial checkin
vrany
parents:
diff changeset
    21
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
f898a869986e initial checkin
vrany
parents:
diff changeset
    22
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
f898a869986e initial checkin
vrany
parents:
diff changeset
    23
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
f898a869986e initial checkin
vrany
parents:
diff changeset
    24
 OTHER DEALINGS IN THE SOFTWARE.
f898a869986e initial checkin
vrany
parents:
diff changeset
    25
"
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
    26
"{ Package: 'stx:libtool' }"
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
    27
f898a869986e initial checkin
vrany
parents:
diff changeset
    28
"{ NameSpace: Tools }"
f898a869986e initial checkin
vrany
parents:
diff changeset
    29
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
    30
BrowserList subclass:#ChangeSetDiffList
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
    31
	instanceVariableNames:'listHolder listEntryLabelGenerator listEntryIconGenerator'
f898a869986e initial checkin
vrany
parents:
diff changeset
    32
	classVariableNames:''
f898a869986e initial checkin
vrany
parents:
diff changeset
    33
	poolDictionaries:''
f898a869986e initial checkin
vrany
parents:
diff changeset
    34
	category:'Interface-Diff'
f898a869986e initial checkin
vrany
parents:
diff changeset
    35
!
f898a869986e initial checkin
vrany
parents:
diff changeset
    36
f898a869986e initial checkin
vrany
parents:
diff changeset
    37
Object subclass:#ListEntry
f898a869986e initial checkin
vrany
parents:
diff changeset
    38
	instanceVariableNames:'model application'
f898a869986e initial checkin
vrany
parents:
diff changeset
    39
	classVariableNames:''
f898a869986e initial checkin
vrany
parents:
diff changeset
    40
	poolDictionaries:''
f898a869986e initial checkin
vrany
parents:
diff changeset
    41
	privateIn:ChangeSetDiffList
f898a869986e initial checkin
vrany
parents:
diff changeset
    42
!
f898a869986e initial checkin
vrany
parents:
diff changeset
    43
f898a869986e initial checkin
vrany
parents:
diff changeset
    44
!ChangeSetDiffList class methodsFor:'documentation'!
f898a869986e initial checkin
vrany
parents:
diff changeset
    45
f898a869986e initial checkin
vrany
parents:
diff changeset
    46
copyright
f898a869986e initial checkin
vrany
parents:
diff changeset
    47
"
f898a869986e initial checkin
vrany
parents:
diff changeset
    48
 Copyright (c) 2007-2010 Jan Vrany
f898a869986e initial checkin
vrany
parents:
diff changeset
    49
 Copyright (c) 2009-2010 eXept Software AG
f898a869986e initial checkin
vrany
parents:
diff changeset
    50
f898a869986e initial checkin
vrany
parents:
diff changeset
    51
 Permission is hereby granted, free of charge, to any person
f898a869986e initial checkin
vrany
parents:
diff changeset
    52
 obtaining a copy of this software and associated documentation
f898a869986e initial checkin
vrany
parents:
diff changeset
    53
 files (the 'Software'), to deal in the Software without
f898a869986e initial checkin
vrany
parents:
diff changeset
    54
 restriction, including without limitation the rights to use,
f898a869986e initial checkin
vrany
parents:
diff changeset
    55
 copy, modify, merge, publish, distribute, sublicense, and/or sell
f898a869986e initial checkin
vrany
parents:
diff changeset
    56
 copies of the Software, and to permit persons to whom the
f898a869986e initial checkin
vrany
parents:
diff changeset
    57
 Software is furnished to do so, subject to the following
f898a869986e initial checkin
vrany
parents:
diff changeset
    58
 conditions:
f898a869986e initial checkin
vrany
parents:
diff changeset
    59
f898a869986e initial checkin
vrany
parents:
diff changeset
    60
 The above copyright notice and this permission notice shall be
f898a869986e initial checkin
vrany
parents:
diff changeset
    61
 included in all copies or substantial portions of the Software.
f898a869986e initial checkin
vrany
parents:
diff changeset
    62
f898a869986e initial checkin
vrany
parents:
diff changeset
    63
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
f898a869986e initial checkin
vrany
parents:
diff changeset
    64
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
f898a869986e initial checkin
vrany
parents:
diff changeset
    65
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
f898a869986e initial checkin
vrany
parents:
diff changeset
    66
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
f898a869986e initial checkin
vrany
parents:
diff changeset
    67
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
f898a869986e initial checkin
vrany
parents:
diff changeset
    68
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
f898a869986e initial checkin
vrany
parents:
diff changeset
    69
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
f898a869986e initial checkin
vrany
parents:
diff changeset
    70
 OTHER DEALINGS IN THE SOFTWARE.
f898a869986e initial checkin
vrany
parents:
diff changeset
    71
f898a869986e initial checkin
vrany
parents:
diff changeset
    72
"
f898a869986e initial checkin
vrany
parents:
diff changeset
    73
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
    74
f898a869986e initial checkin
vrany
parents:
diff changeset
    75
!ChangeSetDiffList class methodsFor:'interface specs'!
f898a869986e initial checkin
vrany
parents:
diff changeset
    76
f898a869986e initial checkin
vrany
parents:
diff changeset
    77
windowSpec
f898a869986e initial checkin
vrany
parents:
diff changeset
    78
    "This resource specification was automatically generated
f898a869986e initial checkin
vrany
parents:
diff changeset
    79
     by the UIPainter of ST/X."
f898a869986e initial checkin
vrany
parents:
diff changeset
    80
f898a869986e initial checkin
vrany
parents:
diff changeset
    81
    "Do not manually edit this!! If it is corrupted,
f898a869986e initial checkin
vrany
parents:
diff changeset
    82
     the UIPainter may not be able to read the specification."
f898a869986e initial checkin
vrany
parents:
diff changeset
    83
f898a869986e initial checkin
vrany
parents:
diff changeset
    84
    "
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
    85
     UIPainter new openOnClass:SVN::DiffList andSelector:#windowSpec
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
    86
     SVN::DiffList new openInterface:#windowSpec
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
    87
     SVN::DiffList open
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
    88
    "
f898a869986e initial checkin
vrany
parents:
diff changeset
    89
f898a869986e initial checkin
vrany
parents:
diff changeset
    90
    <resource: #canvas>
f898a869986e initial checkin
vrany
parents:
diff changeset
    91
f898a869986e initial checkin
vrany
parents:
diff changeset
    92
    ^ 
f898a869986e initial checkin
vrany
parents:
diff changeset
    93
     #(FullSpec
f898a869986e initial checkin
vrany
parents:
diff changeset
    94
        name: windowSpec
f898a869986e initial checkin
vrany
parents:
diff changeset
    95
        window: 
f898a869986e initial checkin
vrany
parents:
diff changeset
    96
       (WindowSpec
f898a869986e initial checkin
vrany
parents:
diff changeset
    97
          label: 'Diff List'
f898a869986e initial checkin
vrany
parents:
diff changeset
    98
          name: 'Diff List'
f898a869986e initial checkin
vrany
parents:
diff changeset
    99
          min: (Point 10 10)
f898a869986e initial checkin
vrany
parents:
diff changeset
   100
          bounds: (Rectangle 0 0 300 300)
f898a869986e initial checkin
vrany
parents:
diff changeset
   101
        )
f898a869986e initial checkin
vrany
parents:
diff changeset
   102
        component: 
f898a869986e initial checkin
vrany
parents:
diff changeset
   103
       (SpecCollection
f898a869986e initial checkin
vrany
parents:
diff changeset
   104
          collection: (
f898a869986e initial checkin
vrany
parents:
diff changeset
   105
           (SelectionInListModelViewSpec
f898a869986e initial checkin
vrany
parents:
diff changeset
   106
              name: 'List'
f898a869986e initial checkin
vrany
parents:
diff changeset
   107
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
f898a869986e initial checkin
vrany
parents:
diff changeset
   108
              model: selectionHolder
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   109
              menu: menuHolder
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   110
              hasHorizontalScrollBar: true
f898a869986e initial checkin
vrany
parents:
diff changeset
   111
              hasVerticalScrollBar: true
f898a869986e initial checkin
vrany
parents:
diff changeset
   112
              listModel: listHolder
f898a869986e initial checkin
vrany
parents:
diff changeset
   113
              multipleSelectOk: true
f898a869986e initial checkin
vrany
parents:
diff changeset
   114
              useIndex: false
f898a869986e initial checkin
vrany
parents:
diff changeset
   115
              highlightMode: line
f898a869986e initial checkin
vrany
parents:
diff changeset
   116
            )
f898a869986e initial checkin
vrany
parents:
diff changeset
   117
           )
f898a869986e initial checkin
vrany
parents:
diff changeset
   118
         
f898a869986e initial checkin
vrany
parents:
diff changeset
   119
        )
f898a869986e initial checkin
vrany
parents:
diff changeset
   120
      )
f898a869986e initial checkin
vrany
parents:
diff changeset
   121
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   122
f898a869986e initial checkin
vrany
parents:
diff changeset
   123
!ChangeSetDiffList class methodsFor:'plugIn spec'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   124
f898a869986e initial checkin
vrany
parents:
diff changeset
   125
aspectSelectors
f898a869986e initial checkin
vrany
parents:
diff changeset
   126
    "This resource specification was automatically generated
f898a869986e initial checkin
vrany
parents:
diff changeset
   127
     by the UIPainter of ST/X."
f898a869986e initial checkin
vrany
parents:
diff changeset
   128
f898a869986e initial checkin
vrany
parents:
diff changeset
   129
    "Do not manually edit this. If it is corrupted,
f898a869986e initial checkin
vrany
parents:
diff changeset
   130
     the UIPainter may not be able to read the specification."
f898a869986e initial checkin
vrany
parents:
diff changeset
   131
f898a869986e initial checkin
vrany
parents:
diff changeset
   132
    "Return a description of exported aspects;
f898a869986e initial checkin
vrany
parents:
diff changeset
   133
     these can be connected to aspects of an embedding application
f898a869986e initial checkin
vrany
parents:
diff changeset
   134
     (if this app is embedded in a subCanvas)."
f898a869986e initial checkin
vrany
parents:
diff changeset
   135
f898a869986e initial checkin
vrany
parents:
diff changeset
   136
    ^ #(
f898a869986e initial checkin
vrany
parents:
diff changeset
   137
        #inGeneratorHolder
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   138
        #outGeneratorHolder
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   139
        #menuHolder
10938
2afa554b0227 - added filter support
vrany
parents: 10926
diff changeset
   140
        #listEntryLabelGenerator
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   141
        #listEntryIconGenerator
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   142
      ).
f898a869986e initial checkin
vrany
parents:
diff changeset
   143
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   144
    "Modified: / 24-11-2009 / 09:59:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   145
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   146
f898a869986e initial checkin
vrany
parents:
diff changeset
   147
!ChangeSetDiffList methodsFor:'accessing'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   148
f898a869986e initial checkin
vrany
parents:
diff changeset
   149
listEntryIconGenerator
f898a869986e initial checkin
vrany
parents:
diff changeset
   150
    ^ listEntryIconGenerator
f898a869986e initial checkin
vrany
parents:
diff changeset
   151
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   152
f898a869986e initial checkin
vrany
parents:
diff changeset
   153
listEntryIconGenerator:aBlock
f898a869986e initial checkin
vrany
parents:
diff changeset
   154
    listEntryIconGenerator := aBlock.
f898a869986e initial checkin
vrany
parents:
diff changeset
   155
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   156
f898a869986e initial checkin
vrany
parents:
diff changeset
   157
listEntryLabelGenerator
f898a869986e initial checkin
vrany
parents:
diff changeset
   158
    ^ listEntryLabelGenerator
f898a869986e initial checkin
vrany
parents:
diff changeset
   159
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   160
f898a869986e initial checkin
vrany
parents:
diff changeset
   161
listEntryLabelGenerator:aBlock
f898a869986e initial checkin
vrany
parents:
diff changeset
   162
    listEntryLabelGenerator := aBlock.
f898a869986e initial checkin
vrany
parents:
diff changeset
   163
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   164
f898a869986e initial checkin
vrany
parents:
diff changeset
   165
!ChangeSetDiffList methodsFor:'aspects'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   166
f898a869986e initial checkin
vrany
parents:
diff changeset
   167
listHolder
f898a869986e initial checkin
vrany
parents:
diff changeset
   168
    "return/create the 'difflistHolder' value holder (automatically generated)"
f898a869986e initial checkin
vrany
parents:
diff changeset
   169
f898a869986e initial checkin
vrany
parents:
diff changeset
   170
    listHolder isNil ifTrue:[
f898a869986e initial checkin
vrany
parents:
diff changeset
   171
        listHolder := ValueHolder new.
f898a869986e initial checkin
vrany
parents:
diff changeset
   172
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   173
    ^ listHolder
f898a869986e initial checkin
vrany
parents:
diff changeset
   174
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   175
f898a869986e initial checkin
vrany
parents:
diff changeset
   176
!ChangeSetDiffList methodsFor:'change & update'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   177
f898a869986e initial checkin
vrany
parents:
diff changeset
   178
update: aspect with: param from: sender
f898a869986e initial checkin
vrany
parents:
diff changeset
   179
f898a869986e initial checkin
vrany
parents:
diff changeset
   180
    aspect == #resolution ifTrue:[^(self componentAt: #List) invalidateRepairNow: true].
f898a869986e initial checkin
vrany
parents:
diff changeset
   181
        
f898a869986e initial checkin
vrany
parents:
diff changeset
   182
    sender == selectionHolder ifTrue:[^self selectionChanged].
f898a869986e initial checkin
vrany
parents:
diff changeset
   183
    super update: aspect with: param from: sender.
f898a869986e initial checkin
vrany
parents:
diff changeset
   184
f898a869986e initial checkin
vrany
parents:
diff changeset
   185
    "Modified: / 24-11-2009 / 18:34:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   186
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   187
f898a869986e initial checkin
vrany
parents:
diff changeset
   188
!ChangeSetDiffList methodsFor:'generators'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   189
f898a869986e initial checkin
vrany
parents:
diff changeset
   190
makeGenerator
f898a869986e initial checkin
vrany
parents:
diff changeset
   191
f898a869986e initial checkin
vrany
parents:
diff changeset
   192
    ^Iterator on:
f898a869986e initial checkin
vrany
parents:
diff changeset
   193
        [:whatToDo|
f898a869986e initial checkin
vrany
parents:
diff changeset
   194
        self selectionHolder value do:
f898a869986e initial checkin
vrany
parents:
diff changeset
   195
            [:each|each model do: whatToDo]]
f898a869986e initial checkin
vrany
parents:
diff changeset
   196
f898a869986e initial checkin
vrany
parents:
diff changeset
   197
    "Modified: / 26-11-2009 / 17:23:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   198
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   199
f898a869986e initial checkin
vrany
parents:
diff changeset
   200
!ChangeSetDiffList methodsFor:'private'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   201
f898a869986e initial checkin
vrany
parents:
diff changeset
   202
listEntryIconFor:aDiffComponent 
f898a869986e initial checkin
vrany
parents:
diff changeset
   203
    |a hasA b hasB hasBase|
f898a869986e initial checkin
vrany
parents:
diff changeset
   204
f898a869986e initial checkin
vrany
parents:
diff changeset
   205
    aDiffComponent isDiffSet ifTrue:[
f898a869986e initial checkin
vrany
parents:
diff changeset
   206
        ^ nil
f898a869986e initial checkin
vrany
parents:
diff changeset
   207
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   208
    hasA := (a := aDiffComponent versionA) notNil and:[a isMethodRemoveChange not].
f898a869986e initial checkin
vrany
parents:
diff changeset
   209
    hasB := (b := aDiffComponent versionB) notNil and:[b isMethodRemoveChange not].
f898a869986e initial checkin
vrany
parents:
diff changeset
   210
    hasBase := aDiffComponent versionBase notNil.
f898a869986e initial checkin
vrany
parents:
diff changeset
   211
    (hasA & hasB & hasBase) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   212
        ^ ToolbarIconLibrary versionABBase12x12 
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   213
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   214
    (hasA & hasB) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   215
        ^ ToolbarIconLibrary versionAB12x12
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   216
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   217
    (hasA & hasBase) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   218
        ^ ToolbarIconLibrary versionABase12x12
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   219
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   220
    (hasA) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   221
        ^ ToolbarIconLibrary versionA12x12
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   222
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   223
    (hasB & hasBase) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   224
        ^ ToolbarIconLibrary versionBBase12x12
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   225
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   226
    (hasB) ifTrue:[
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   227
        ^ ToolbarIconLibrary versionB12x12
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   228
    ].
f898a869986e initial checkin
vrany
parents:
diff changeset
   229
    ^ nil
f898a869986e initial checkin
vrany
parents:
diff changeset
   230
f898a869986e initial checkin
vrany
parents:
diff changeset
   231
    "Created: / 21-11-2009 / 21:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   232
    "Modified: / 09-06-2011 / 08:19:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10217
fcb21281008f changed: #listEntryIconFor:
vrany
parents: 10192
diff changeset
   233
    "Modified: / 06-07-2011 / 16:38:33 / jv"
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   234
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   235
f898a869986e initial checkin
vrany
parents:
diff changeset
   236
listEntryLabelFor:diff 
f898a869986e initial checkin
vrany
parents:
diff changeset
   237
f898a869986e initial checkin
vrany
parents:
diff changeset
   238
    ^listEntryLabelGenerator 
f898a869986e initial checkin
vrany
parents:
diff changeset
   239
        ifNotNil: [listEntryLabelGenerator value: diff]
f898a869986e initial checkin
vrany
parents:
diff changeset
   240
        ifNil:[diff name]
f898a869986e initial checkin
vrany
parents:
diff changeset
   241
f898a869986e initial checkin
vrany
parents:
diff changeset
   242
    "Modified: / 24-11-2009 / 10:00:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   243
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   244
f898a869986e initial checkin
vrany
parents:
diff changeset
   245
makeDependent
f898a869986e initial checkin
vrany
parents:
diff changeset
   246
f898a869986e initial checkin
vrany
parents:
diff changeset
   247
    "Nothing to do"
f898a869986e initial checkin
vrany
parents:
diff changeset
   248
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   249
f898a869986e initial checkin
vrany
parents:
diff changeset
   250
makeIndependent
f898a869986e initial checkin
vrany
parents:
diff changeset
   251
f898a869986e initial checkin
vrany
parents:
diff changeset
   252
    "Nothing to do"
f898a869986e initial checkin
vrany
parents:
diff changeset
   253
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   254
f898a869986e initial checkin
vrany
parents:
diff changeset
   255
updateList
f898a869986e initial checkin
vrany
parents:
diff changeset
   256
    "Superclass Tools::BrowserList says that I am responsible to implement this method"
f898a869986e initial checkin
vrany
parents:
diff changeset
   257
    
f898a869986e initial checkin
vrany
parents:
diff changeset
   258
    | newDiffs newList |
f898a869986e initial checkin
vrany
parents:
diff changeset
   259
    self listHolder value ? #() do: [:entry|entry model removeDependent: self].
f898a869986e initial checkin
vrany
parents:
diff changeset
   260
f898a869986e initial checkin
vrany
parents:
diff changeset
   261
    newDiffs := self inGeneratorHolder value ? #().
10246
0a4d2feea6a3 Bug fix for two-column changeset diff
vrany
parents: 10217
diff changeset
   262
    (newDiffs isKindOf: ChangeSetDiffComponent) ifTrue:
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   263
        [newDiffs := newDiffs diffs].
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   264
    newList := OrderedCollection new:16.        
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   265
    newDiffs do:
f898a869986e initial checkin
vrany
parents:
diff changeset
   266
        [:item|
f898a869986e initial checkin
vrany
parents:
diff changeset
   267
        newList add:(ListEntry model: item application: self).
f898a869986e initial checkin
vrany
parents:
diff changeset
   268
        item addDependent: self].
10251
a6eb247b3746 Merged with JV's branch
vrany
parents: 10246
diff changeset
   269
a6eb247b3746 Merged with JV's branch
vrany
parents: 10246
diff changeset
   270
    newList sort:[:a :b|a label < b label].
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   271
    self listHolder value:newList
f898a869986e initial checkin
vrany
parents:
diff changeset
   272
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   273
    "Modified: / 06-07-2011 / 12:58:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10251
a6eb247b3746 Merged with JV's branch
vrany
parents: 10246
diff changeset
   274
    "Modified: / 07-07-2011 / 14:17:26 / jv"
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   275
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   276
f898a869986e initial checkin
vrany
parents:
diff changeset
   277
!ChangeSetDiffList::ListEntry class methodsFor:'instance creation'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   278
f898a869986e initial checkin
vrany
parents:
diff changeset
   279
model: model application: application
f898a869986e initial checkin
vrany
parents:
diff changeset
   280
f898a869986e initial checkin
vrany
parents:
diff changeset
   281
    ^self new
f898a869986e initial checkin
vrany
parents:
diff changeset
   282
        model: model;
f898a869986e initial checkin
vrany
parents:
diff changeset
   283
        application: application
f898a869986e initial checkin
vrany
parents:
diff changeset
   284
f898a869986e initial checkin
vrany
parents:
diff changeset
   285
    "Created: / 24-11-2009 / 18:29:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   286
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   287
f898a869986e initial checkin
vrany
parents:
diff changeset
   288
!ChangeSetDiffList::ListEntry methodsFor:'accessing'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   289
f898a869986e initial checkin
vrany
parents:
diff changeset
   290
application
f898a869986e initial checkin
vrany
parents:
diff changeset
   291
    ^ application
f898a869986e initial checkin
vrany
parents:
diff changeset
   292
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   293
f898a869986e initial checkin
vrany
parents:
diff changeset
   294
application:aDiffList
f898a869986e initial checkin
vrany
parents:
diff changeset
   295
    application := aDiffList.
f898a869986e initial checkin
vrany
parents:
diff changeset
   296
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   297
f898a869986e initial checkin
vrany
parents:
diff changeset
   298
icon
f898a869986e initial checkin
vrany
parents:
diff changeset
   299
f898a869986e initial checkin
vrany
parents:
diff changeset
   300
    ^application 
f898a869986e initial checkin
vrany
parents:
diff changeset
   301
        ifNotNil:[application listEntryIconFor: model]
f898a869986e initial checkin
vrany
parents:
diff changeset
   302
        ifNil:[nil]
f898a869986e initial checkin
vrany
parents:
diff changeset
   303
f898a869986e initial checkin
vrany
parents:
diff changeset
   304
    "Created: / 24-11-2009 / 18:26:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   305
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   306
f898a869986e initial checkin
vrany
parents:
diff changeset
   307
label
f898a869986e initial checkin
vrany
parents:
diff changeset
   308
f898a869986e initial checkin
vrany
parents:
diff changeset
   309
    ^application 
f898a869986e initial checkin
vrany
parents:
diff changeset
   310
        ifNotNil:[application listEntryLabelFor: model]
f898a869986e initial checkin
vrany
parents:
diff changeset
   311
        ifNil:[model displayString]
f898a869986e initial checkin
vrany
parents:
diff changeset
   312
f898a869986e initial checkin
vrany
parents:
diff changeset
   313
    "Created: / 24-11-2009 / 18:26:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   314
    "Modified: / 26-11-2009 / 17:33:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   315
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   316
f898a869986e initial checkin
vrany
parents:
diff changeset
   317
model
f898a869986e initial checkin
vrany
parents:
diff changeset
   318
    ^ model
f898a869986e initial checkin
vrany
parents:
diff changeset
   319
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   320
f898a869986e initial checkin
vrany
parents:
diff changeset
   321
model:aDiffComponent
f898a869986e initial checkin
vrany
parents:
diff changeset
   322
    model := aDiffComponent.
f898a869986e initial checkin
vrany
parents:
diff changeset
   323
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   324
f898a869986e initial checkin
vrany
parents:
diff changeset
   325
!ChangeSetDiffList::ListEntry methodsFor:'displaying'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   326
f898a869986e initial checkin
vrany
parents:
diff changeset
   327
displayOn: aGC x: x y: y opaque: opaque
f898a869986e initial checkin
vrany
parents:
diff changeset
   328
f898a869986e initial checkin
vrany
parents:
diff changeset
   329
    | icon  |
f898a869986e initial checkin
vrany
parents:
diff changeset
   330
    (icon := self icon) ifNotNil:[icon displayOn: aGC x: x y: y - icon height opaque: opaque].
f898a869986e initial checkin
vrany
parents:
diff changeset
   331
    self label displayOn: aGC x: x + 16 y:y opaque: opaque
f898a869986e initial checkin
vrany
parents:
diff changeset
   332
f898a869986e initial checkin
vrany
parents:
diff changeset
   333
    "Created: / 24-11-2009 / 18:21:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f898a869986e initial checkin
vrany
parents:
diff changeset
   334
! !
f898a869986e initial checkin
vrany
parents:
diff changeset
   335
f898a869986e initial checkin
vrany
parents:
diff changeset
   336
!ChangeSetDiffList class methodsFor:'documentation'!
f898a869986e initial checkin
vrany
parents:
diff changeset
   337
f898a869986e initial checkin
vrany
parents:
diff changeset
   338
version_CVS
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   339
    ^ '§Header: /cvs/stx/stx/libtool/Tools__ChangeSetDiffList.st,v 1.4 2011/07/07 14:12:15 vrany Exp §'
10192
f898a869986e initial checkin
vrany
parents:
diff changeset
   340
!
f898a869986e initial checkin
vrany
parents:
diff changeset
   341
f898a869986e initial checkin
vrany
parents:
diff changeset
   342
version_SVN
12123
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   343
    ^ '$Id: Tools__ChangeSetDiffList.st 7810 2011-08-12 14:54:02Z vranyj1 $'
4bde08cebd48 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10938
diff changeset
   344
! !