ChangeSetDiffEntry.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 19 Mar 2012 15:30:00 +0000
branchjv
changeset 3030 f89aa3cfedde
parent 3029 c7be0be50898
child 3033 8964521a2c1b
permissions -rw-r--r--
Merge support
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
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    73
        versionA: versionA;
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    74
        versionB: versionA asAntiChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    75
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    76
    "Modified: / 24-11-2009 / 12:30:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
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
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    89
        versionA: versionB asAntiChange;
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    90
        versionB: versionB.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    91
8b67a184e661 initial checkin
vrany
parents:
diff changeset
    92
    "Modified: / 24-11-2009 / 12:30:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
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
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   139
    (mergeInfo isNil and:[versionBase notNil and:[Tools::TextMergeInfo notNil]]) ifTrue:[
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
merged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   155
    ^ versionMerged notNil
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   156
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   157
    "Modified: / 24-11-2009 / 12:55:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   158
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   159
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   160
mergedUsingVersionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   161
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   162
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   163
    versionA ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   164
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   165
    ^versionA sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   166
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   167
    "Created: / 24-11-2009 / 08:16:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   168
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   169
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   170
mergedUsingVersionB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   171
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   172
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   173
    versionB ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   174
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   175
    ^versionB sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   176
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   177
    "Created: / 24-11-2009 / 08:16:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   178
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   179
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   180
mergedUsingVersionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   181
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   182
    versionMerged ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   183
    versionBase ifNil:[^false].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   184
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   185
    ^versionBase sameAs: versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   186
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   187
    "Created: / 24-11-2009 / 08:16:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   188
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   189
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   190
name
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   191
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   192
    ^self versionAorB displayString
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   193
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   194
    "Created: / 24-11-2009 / 09:56:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   195
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   196
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   197
nonMetaClassName
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   198
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   199
    ^(versionA ? versionB) nonMetaClassName
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   200
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   201
    "Created: / 21-11-2009 / 07:42:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   202
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   203
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   204
versionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   205
    ^ versionA
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   206
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   207
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   208
versionA:something
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   209
    versionA := something.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   210
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   211
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   212
versionALabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   213
    ^ parent versionALabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   214
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   215
    "Created: / 09-11-2009 / 12:38:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   216
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   217
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   218
versionAText
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   219
    ^ versionA source
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   220
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   221
    "Created: / 06-07-2011 / 12:29:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   222
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   223
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   224
versionAorB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   225
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   226
    ^versionA isClassRemoveChangeOrMethodRemoveChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   227
        ifFalse:[versionA]
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   228
        ifTrue:[versionB]
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   229
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   230
    "Created: / 02-11-2009 / 18:48:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
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
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   234
    ^ versionB
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   235
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   236
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   237
versionB:something
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   238
    versionB := something.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   239
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   240
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   241
versionBLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   242
    ^ parent versionBLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   243
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   244
    "Created: / 09-11-2009 / 12:38:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   245
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   246
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   247
versionBText
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   248
    ^ versionB source
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   249
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   250
    "Created: / 06-07-2011 / 12:29:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   251
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   252
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   253
versionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   254
    ^ versionBase
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   255
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   256
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   257
versionBase:something
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   258
    versionBase := something.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   259
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   260
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   261
versionBaseLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   262
    ^ parent versionBaseLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   263
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   264
    "Created: / 23-11-2009 / 22:55:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   265
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   266
3029
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   267
versionBaseText
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   268
    ^versionBase notNil ifTrue:[
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   269
        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
   270
    ] ifFalse:[
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   271
        nil
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
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   274
    "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
   275
!
c7be0be50898 - ChangeSet>>#fromFile: sets the name of the CS to tje filename.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3012
diff changeset
   276
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   277
versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   278
    ^ versionMerged
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   279
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   280
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   281
versionMerged:aChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   282
    versionMerged := aChange.
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   283
    self changed:#resolution with: aChange
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   284
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   285
    "Modified: / 24-11-2009 / 12:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   286
!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   287
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   288
versionMergedLabel
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   289
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   290
    (versionMerged isNil)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   291
        ifTrue:[^'<unresolved>' asText colorizeAllWith: Color red].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   292
    (versionMerged sameAs: versionA)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   293
        ifTrue:[^self versionALabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   294
    (versionMerged sameAs: versionB)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   295
        ifTrue:[^self versionBLabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   296
    (versionMerged sameAs: versionBase)
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   297
        ifTrue:[^self versionBaseLabel].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   298
    ^'manual merge'
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   299
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   300
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   301
!ChangeSetDiffEntry methodsFor:'enumerating'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   302
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   303
do: aBlock
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   304
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   305
    aBlock value: self
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   306
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   307
    "Created: / 25-11-2009 / 10:22:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   308
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   309
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   310
!ChangeSetDiffEntry methodsFor:'merging'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   311
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   312
automerge
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   313
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   314
    "Try to automatically merge differences. The merge is based
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   315
     on versionBase. If any of versions is same as versionBase, 
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   316
     the other is used as merge result"
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   317
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   318
    ^self.
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   319
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   320
    versionBase ifNil:[^self].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   321
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   322
    (versionA sameAs: versionBase) ifTrue:[versionMerged := versionB copy].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   323
    (versionB sameAs: versionBase) ifTrue:[versionMerged := versionA copy].
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   324
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   325
    "Created: / 02-11-2009 / 18:51:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   326
    "Modified: / 19-03-2012 / 15:14:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   327
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   328
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   329
!ChangeSetDiffEntry methodsFor:'testing'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   330
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   331
isDiffItem
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   332
    ^ true
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   333
!
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   334
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   335
isMerged
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   336
    | mi |
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   337
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   338
    ^(mi := self mergeInfo) notNil ifTrue:[
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   339
        mi isMerged
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   340
    ] ifFalse:[
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   341
        false
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   342
    ]
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
    "Created: / 19-03-2012 / 15:12:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2409
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   345
! !
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   346
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   347
!ChangeSetDiffEntry class methodsFor:'documentation'!
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   348
8b67a184e661 initial checkin
vrany
parents:
diff changeset
   349
version_CVS
3011
1997ff6e7e55 trunk branched into /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2631
diff changeset
   350
    ^ '§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
   351
!
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   352
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   353
version_SVN
3030
f89aa3cfedde Merge support
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3029
diff changeset
   354
    ^ '$Id: ChangeSetDiffEntry.st 1896 2012-03-19 15:30:00Z vranyj1 $'
3012
4f40b8304d54 Added InvalidChange
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3011
diff changeset
   355
! !