ChangeSetDiffEntry.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 18 Apr 2012 21:21:56 +0100
branchjv
changeset 3051 e056039b3a1b
parent 3045 0d05c8eaa028
child 3056 251db3a15e2e
permissions -rw-r--r--
- ChangeSetDiffEntry added: #isForVersionMethod - ChangeSetDiffComponent added: #isForVersionMethod - ChangeSetDiffSet added: #isForVersionMethod - extensions ...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     1
"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     2
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     3
                           Czech Technical University in Prague
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     4
 Copyright (c) 2009-2010 eXept Software AG
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     5
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     6
 Permission is hereby granted, free of charge, to any person
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     7
 obtaining a copy of this software and associated documentation
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     8
 files (the 'Software'), to deal in the Software without
8b67a184e661 initial checkin
vrany
parents:
diff changeset
     9
 restriction, including without limitation the rights to use,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    10
 copy, modify, merge, publish, distribute, sublicense, and/or sell
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    11
 copies of the Software, and to permit persons to whom the
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    12
 Software is furnished to do so, subject to the following
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    13
 conditions:
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    14
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    15
 The above copyright notice and this permission notice shall be
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    16
 included in all copies or substantial portions of the Software.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    17
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    18
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    19
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    20
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    21
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    22
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    23
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    24
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    25
 OTHER DEALINGS IN THE SOFTWARE.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    26
"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    27
"{ Package: 'stx:libbasic3' }"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    28
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    29
ChangeSetDiffComponent subclass:#ChangeSetDiffEntry
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
    30
	instanceVariableNames:'versionBase versionA versionB versionMerged mergeInfo'
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    31
	classVariableNames:''
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    32
	poolDictionaries:''
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    33
	category:'System-Changes-Diff'
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    34
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    35
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    36
!ChangeSetDiffEntry class methodsFor:'documentation'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    37
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    38
copyright
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    39
"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    40
 Copyright (c) 2007-2010 Jan Vrany, SWING Research Group,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    41
                           Czech Technical University in Prague
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    42
 Copyright (c) 2009-2010 eXept Software AG
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    43
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    44
 Permission is hereby granted, free of charge, to any person
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    45
 obtaining a copy of this software and associated documentation
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    46
 files (the 'Software'), to deal in the Software without
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    47
 restriction, including without limitation the rights to use,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    48
 copy, modify, merge, publish, distribute, sublicense, and/or sell
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    49
 copies of the Software, and to permit persons to whom the
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    50
 Software is furnished to do so, subject to the following
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    51
 conditions:
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    52
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    53
 The above copyright notice and this permission notice shall be
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    54
 included in all copies or substantial portions of the Software.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    55
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    56
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    57
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    58
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    59
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    60
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    61
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    62
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    63
 OTHER DEALINGS IN THE SOFTWARE.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    64
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    65
"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    66
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    67
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    68
!ChangeSetDiffEntry class methodsFor:'instance creation'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    69
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    70
versionA:versionA 
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    71
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    72
    ^self new
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
    73
"/        versionB: versionA asAntiChange
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
    74
        versionA: versionA.
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    75
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
    76
    "Modified (comment): / 20-03-2012 / 21:42:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    77
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    78
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    79
versionA:versionA versionB:versionB 
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    80
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    81
    ^self new
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    82
        versionA: versionA;
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    83
        versionB: versionB.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    84
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    85
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    86
versionB:versionB 
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    87
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    88
    ^self new
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
    89
"/        versionA: versionB asAntiChange;
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    90
        versionB: versionB.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    91
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
    92
    "Modified: / 20-03-2012 / 21:42:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    93
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    94
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    95
!ChangeSetDiffEntry class methodsFor:'image specs'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    96
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    97
iconMinus
2492
d26f39cbd4a8 changed:
Claus Gittinger <cg@exept.de>
parents: 2409
diff changeset
    98
    ^ ToolbarIconLibrary iconMinus12x12
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    99
2492
d26f39cbd4a8 changed:
Claus Gittinger <cg@exept.de>
parents: 2409
diff changeset
   100
    "Modified: / 31-08-2011 / 10:51:21 / cg"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   101
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   102
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   103
iconPlus
2492
d26f39cbd4a8 changed:
Claus Gittinger <cg@exept.de>
parents: 2409
diff changeset
   104
    ^ ToolbarIconLibrary iconPlus12x12
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   105
2492
d26f39cbd4a8 changed:
Claus Gittinger <cg@exept.de>
parents: 2409
diff changeset
   106
    "Modified: / 31-08-2011 / 10:51:34 / cg"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   107
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   108
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   109
!ChangeSetDiffEntry methodsFor:'accessing'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   110
2631
vrany
parents: 2492
diff changeset
   111
changeClass
vrany
parents: 2492
diff changeset
   112
vrany
parents: 2492
diff changeset
   113
    ^(versionA ? versionB) changeClass
vrany
parents: 2492
diff changeset
   114
vrany
parents: 2492
diff changeset
   115
    "Created: / 30-11-2011 / 11:35:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
vrany
parents: 2492
diff changeset
   116
!
vrany
parents: 2492
diff changeset
   117
vrany
parents: 2492
diff changeset
   118
changeSelector
vrany
parents: 2492
diff changeset
   119
vrany
parents: 2492
diff changeset
   120
    | chg |
vrany
parents: 2492
diff changeset
   121
vrany
parents: 2492
diff changeset
   122
    (chg := versionA ? versionB) isMethodChange ifTrue:[
vrany
parents: 2492
diff changeset
   123
        ^chg changeSelector            
vrany
parents: 2492
diff changeset
   124
    ] ifFalse:[
vrany
parents: 2492
diff changeset
   125
        ^nil
vrany
parents: 2492
diff changeset
   126
    ]
vrany
parents: 2492
diff changeset
   127
vrany
parents: 2492
diff changeset
   128
    "Created: / 30-11-2011 / 11:40:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
vrany
parents: 2492
diff changeset
   129
!
vrany
parents: 2492
diff changeset
   130
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   131
className
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   132
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   133
    ^(versionA ? versionB) className
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   134
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   135
    "Created: / 01-11-2009 / 16:48:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   136
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   137
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   138
mergeInfo
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   139
    (mergeInfo isNil and:[Tools::TextMergeInfo notNil]) ifTrue:[
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   140
        mergeInfo := Tools::TextMergeInfo new.
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   141
        mergeInfo text1: self versionBaseText text2: self versionAText text3: self versionBText.
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   142
    ].
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   143
    ^mergeInfo
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   144
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   145
    "Created: / 19-03-2012 / 14:57:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   146
!
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   147
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   148
mergeInfo:aTextMergeInfo
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   149
    mergeInfo := aTextMergeInfo.
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   150
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   151
    "Created: / 19-03-2012 / 14:57:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   152
!
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   153
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   154
mergedUsingVersionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   155
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   156
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   157
    versionA ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   158
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   159
    ^versionA sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   160
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   161
    "Created: / 24-11-2009 / 08:16:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   162
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   163
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   164
mergedUsingVersionB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   165
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   166
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   167
    versionB ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   168
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   169
    ^versionB sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   170
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   171
    "Created: / 24-11-2009 / 08:16:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   172
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   173
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   174
mergedUsingVersionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   175
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   176
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   177
    versionBase ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   178
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   179
    ^versionBase sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   180
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   181
    "Created: / 24-11-2009 / 08:16:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   182
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   183
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   184
name
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   185
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   186
    ^self versionAorB displayString
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   187
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   188
    "Created: / 24-11-2009 / 09:56:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   189
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   190
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   191
nonMetaClassName
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   192
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   193
    ^(versionA ? versionB) nonMetaClassName
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   194
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   195
    "Created: / 21-11-2009 / 07:42:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   196
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   197
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   198
versionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   199
    ^ versionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   200
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   201
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   202
versionA:something
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   203
    versionA := something.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   204
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   205
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   206
versionALabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   207
    ^ parent versionALabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   208
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   209
    "Created: / 09-11-2009 / 12:38:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   210
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   211
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   212
versionAText
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   213
    ^versionA notNil ifTrue:[            
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   214
        versionA source
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   215
    ] ifFalse:[
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   216
        nil
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   217
    ].
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   218
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   219
    "Created: / 06-07-2011 / 12:29:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   220
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   221
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   222
versionAorB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   223
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   224
    ^versionA ? versionB
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   225
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   226
    "Created: / 02-11-2009 / 18:48:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   227
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   228
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   229
versionB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   230
    ^ versionB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   231
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   232
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   233
versionB:something
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   234
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   235
    versionB := something.
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   236
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   237
    "Modified: / 20-03-2012 / 22:08:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   238
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   239
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   240
versionBLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   241
    ^ parent versionBLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   242
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   243
    "Created: / 09-11-2009 / 12:38:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   244
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   245
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   246
versionBText
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   247
    ^versionB notNil ifTrue:[            
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   248
        versionB source
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   249
    ] ifFalse:[
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   250
        nil
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   251
    ].
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   252
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   253
    "Created: / 06-07-2011 / 12:29:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   254
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   255
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   256
versionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   257
    ^ versionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   258
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   259
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   260
versionBase:something
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   261
    versionBase := something.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   262
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   263
3029
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   264
versionBaseText
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   265
    ^versionBase notNil ifTrue:[            
3029
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   266
        versionBase source
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   267
    ] ifFalse:[
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   268
        nil
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   269
    ].
3029
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   270
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   271
    "Created: / 16-03-2012 / 15:20:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   272
!
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   273
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   274
versionMerged
3033
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   275
    "Returns a change representing a merge"
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   276
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   277
    | merged |
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   278
    merged := versionMerged.
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   279
    (merged isNil and:[mergeInfo notNil]) ifTrue:[
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   280
        merged := (versionA ? versionB ? versionBase) copy.
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   281
        merged source: mergeInfo text.
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   282
        merged isClassDefinitionChange ifTrue:[
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   283
            merged setupFromSource.
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   284
        ]
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   285
3033
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   286
    ].
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   287
    ^merged
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   288
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   289
    "Modified: / 21-03-2012 / 00:59:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   290
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   291
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   292
versionMerged:aChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   293
    versionMerged := aChange.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   294
    self changed:#resolution with: aChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   295
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   296
    "Modified: / 24-11-2009 / 12:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   297
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   298
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   299
versionMergedLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   300
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   301
    (versionMerged isNil)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   302
        ifTrue:[^'<unresolved>' asText colorizeAllWith: Color red].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   303
    (versionMerged sameAs: versionA)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   304
        ifTrue:[^self versionALabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   305
    (versionMerged sameAs: versionB)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   306
        ifTrue:[^self versionBLabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   307
    (versionMerged sameAs: versionBase)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   308
        ifTrue:[^self versionBaseLabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   309
    ^'manual merge'
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   310
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   311
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   312
!ChangeSetDiffEntry methodsFor:'enumerating'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   313
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   314
do: aBlock
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   315
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   316
    aBlock value: self
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   317
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   318
    "Created: / 25-11-2009 / 10:22:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   319
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   320
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   321
!ChangeSetDiffEntry methodsFor:'merging'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   322
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   323
automerge
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   324
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   325
    "Automerge version methods"
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   326
    versionB ifNil:[^self].
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   327
    versionB isMethodCodeChange ifTrue:[
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   328
        (AbstractSourceCodeManager isVersionMethodSelector: versionB selector) ifTrue:[
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   329
            versionMerged := versionB copy.
3045
0d05c8eaa028 - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3042
diff changeset
   330
            self mergeInfo mergeUsingB: (versionB source)
3034
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   331
        ]
c892671f3e2a Improvements in merge tool - npw it could merge libtool3
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3033
diff changeset
   332
    ].
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   333
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   334
    "Created: / 02-11-2009 / 18:51:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3045
0d05c8eaa028 - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3042
diff changeset
   335
    "Modified: / 09-04-2012 / 16:37:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0d05c8eaa028 - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3042
diff changeset
   336
    "Modified (comment): / 09-04-2012 / 18:01:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   337
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   338
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   339
!ChangeSetDiffEntry methodsFor:'testing'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   340
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   341
isDiffItem
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   342
    ^ true
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   343
!
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   344
3051
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   345
isForVersionMethod
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   346
    "Returns true, if this is an entry for version method"
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   347
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   348
    ^versionA notNil and:[versionA isMethodCodeChange
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   349
        and:[versionB notNil and:[versionB isMethodCodeChange
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   350
            and:[AbstractSourceCodeManager isVersionMethodSelector: versionA selector]]]]
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   351
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   352
    "Created: / 18-04-2012 / 18:50:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   353
!
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   354
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   355
isMerged
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   356
    | mi |
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   357
3033
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   358
    versionMerged notNil ifTrue:[ ^ true ].
8964521a2c1b Fixes for mergetool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3030
diff changeset
   359
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   360
    ^(mi := self mergeInfo) notNil ifTrue:[
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   361
        mi isMerged
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   362
    ] ifFalse:[
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   363
        false
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   364
    ]
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   365
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   366
    "Created: / 19-03-2012 / 15:12:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   367
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   368
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   369
!ChangeSetDiffEntry class methodsFor:'documentation'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   370
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   371
version_CVS
3011
1997ff6e7e55 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2631
diff changeset
   372
    ^ '§Header: /cvs/stx/stx/libbasic3/ChangeSetDiffEntry.st,v 1.3 2011/11/30 18:52:51 vrany Exp §'
3012
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   373
!
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   374
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   375
version_SVN
3051
e056039b3a1b - ChangeSetDiffEntry
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3045
diff changeset
   376
    ^ '$Id: ChangeSetDiffEntry.st 1920 2012-04-18 20:21:56Z vranyj1 $'
3012
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   377
! !