Tools__TextDiff3Tool.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 26 Jul 2012 19:46:57 +0100
branchjv
changeset 12269 79f87eee62e5
parent 12264 75581322c03b
child 12307 d7a3df44366a
permissions -rw-r--r--
ChangeSetBrowser2 improvements: - uses DataSetView instead of list (allows for multiple columns) - CodeView2 and its Diff*Tool users now respect value of codeAspect
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
              All Rights Reserved
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
 hereby transferred.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
"{ NameSpace: Tools }"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
TextDiffTool subclass:#TextDiff3Tool
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    17
	instanceVariableNames:'labelMergedHolder textMergedHolder mergeHolder mergeDataHolder
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
    18
		mergeView mergeService'
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	classVariableNames:''
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	poolDictionaries:''
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
	category:'Interface-Diff'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    24
CodeViewService subclass:#MergeService
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
    25
	instanceVariableNames:'dataHolder data sectionInterval'
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    26
	classVariableNames:''
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    27
	poolDictionaries:''
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    28
	privateIn:TextDiff3Tool
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    29
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    30
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!TextDiff3Tool class methodsFor:'documentation'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
copyright
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
 COPYRIGHT (c) 2006 by eXept Software AG
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
              All Rights Reserved
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
 This software is furnished under a license and may be used
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
 only in accordance with the terms of that license and with the
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
 inclusion of the above copyright notice.   This software may not
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
 be provided or otherwise made available to, or used by, any
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
 other person.  No title to or ownership of the software is
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
 hereby transferred.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
documentation
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
    documentation to be added.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    [author:]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
        Jan Vrany <jan.vrany@fit.cvut.cz>
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    [instance variables:]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    [class variables:]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    [see also:]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
examples
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
  Starting the application:
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
                                                                [exBegin]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    Tools::TextDiff3Tool open
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
                                                                [exEnd]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
  more examples to be added:
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
                                                                [exBegin]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    ... add code fragment for 
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    ... executable example here ...
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
                                                                [exEnd]
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    79
!TextDiff3Tool class methodsFor:'defaults - colors'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    80
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    81
colorA
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    82
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    83
    ^(Color red:54.1176470588235 green:75.2941176470588 blue:28.6274509803922) lighter
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    84
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    85
    "Created: / 19-03-2012 / 13:11:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    86
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    87
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    88
colorB
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    89
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    90
    ^(Color red:96.078431372549 green:73.7254901960784 blue:0.0) lighter
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    91
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    92
    "Created: / 19-03-2012 / 13:11:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    93
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    94
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    95
colorBase
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    96
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    97
    ^(Color red:5.88235294117647 green:58.8235294117647 blue:80.3921568627451) lighter
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    98
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
    99
    "Created: / 19-03-2012 / 13:12:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   100
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   101
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   102
colorConflict
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   103
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   104
    ^Color red
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   105
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   106
    "Created: / 19-03-2012 / 13:12:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   107
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   108
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   109
colorMerged
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   110
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   111
    ^(Color red:83.921568627451 green:17.2549019607843 blue:85.0980392156863) lighter
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   112
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   113
    "Created: / 19-03-2012 / 13:11:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   114
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   115
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
!TextDiff3Tool class methodsFor:'interface specs'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
diff3Spec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    "This resource specification was automatically generated
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
     by the UIPainter of ST/X."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    "Do not manually edit this!! If it is corrupted,
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
     the UIPainter may not be able to read the specification."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
    "
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#diff3Spec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
     Tools::TextDiff3Tool new openInterface:#diff3Spec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
    "
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    <resource: #canvas>
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
    ^ 
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
     #(FullSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
        name: diff3Spec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
        window: 
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
       (WindowSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
          label: 'Text Diff Tool (for embedding)'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
          name: 'Text Diff Tool (for embedding)'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
          min: (Point 10 10)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
          bounds: (Rectangle 0 0 782 506)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
        )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
        component: 
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
       (SpecCollection
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
          collection: (
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
           (ViewSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
              name: '3Labels'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
              layout: (LayoutFrame 0 0 0 0 -16 1 30 0)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
              component: 
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
             (SpecCollection
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
                collection: (
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
                 (UISubSpecification
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
                    name: 'VersionC'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
                    layout: (LayoutFrame 0 0 0 0 0 0.33333 30 0)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
                    minorKey: versionCLabelSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
                  )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
                 (UISubSpecification
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
                    name: 'VersionA'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
                    layout: (LayoutFrame 5 0.3333 0 0 0 0.67 30 0)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
                    minorKey: versionALabelSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
                  )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
                 (UISubSpecification
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
                    name: 'VersionB'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
                    layout: (LayoutFrame 5 0.67 0 0 0 1 30 0)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
                    minorKey: versionBLabelSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
                  )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
                 )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
               
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
              )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
            )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
           (ArbitraryComponentSpec
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
              name: 'Diff3TextView'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
              layout: (LayoutFrame 0 0 30 0 0 1 0 1)
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
              hasHorizontalScrollBar: false
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
              hasVerticalScrollBar: false
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
              autoHideScrollBars: false
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
              hasBorder: false
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
              component: #'Tools::Diff3CodeView2'
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
              postBuildCallback: postBuildDiffView:
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
            )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
           )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
         
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
        )
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
      )
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   184
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   185
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   186
mergeSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   187
    "This resource specification was automatically generated
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   188
     by the UIPainter of ST/X."
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   189
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   190
    "Do not manually edit this!! If it is corrupted,
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   191
     the UIPainter may not be able to read the specification."
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   192
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   193
    "
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   194
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#mergeSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   195
     Tools::TextDiff3Tool new openInterface:#mergeSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   196
    "
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   197
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   198
    <resource: #canvas>
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   199
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   200
    ^ 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   201
     #(FullSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   202
        name: mergeSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   203
        window: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   204
       (WindowSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   205
          label: 'Merge view'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   206
          name: 'Merge view'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   207
          min: (Point 10 10)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   208
          bounds: (Rectangle 0 0 782 506)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   209
        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   210
        component: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   211
       (SpecCollection
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   212
          collection: (
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   213
           (VariableVerticalPanelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   214
              name: 'DiffAndMergePanel'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   215
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   216
              component: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   217
             (SpecCollection
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   218
                collection: (
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   219
                 (UISubSpecification
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   220
                    name: 'DiffView'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   221
                    minorKey: diff3Spec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   222
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   223
                 (TransparentBoxSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   224
                    name: 'MergeView'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   225
                    component: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   226
                   (SpecCollection
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   227
                      collection: (
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   228
                       (UISubSpecification
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   229
                          name: 'MergeLabel'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   230
                          layout: (LayoutFrame 0 0 0 0 0 1 30 0)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   231
                          minorKey: versionMergedLabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   232
                        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   233
                       (TextEditorSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   234
                          name: 'MergeCode'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   235
                          layout: (LayoutFrame 0 0 30 0 0 1 0 1)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   236
                          model: textMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   237
                          hasHorizontalScrollBar: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   238
                          hasVerticalScrollBar: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   239
                          hasKeyboardFocusInitially: false
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   240
                          viewClassName: 'Tools::CodeView2'
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   241
                          postBuildCallback: postBuildMergeView:
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   242
                        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   243
                       )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   244
                     
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   245
                    )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   246
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   247
                 )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   248
               
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   249
              )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   250
              handles: (Any 0.5 1.0)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   251
            )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   252
           )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   253
         
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   254
        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   255
      )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   256
! !
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   257
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   258
!TextDiff3Tool class methodsFor:'interface specs - labels'!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   259
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   260
versionMergedLabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   261
    "This resource specification was automatically generated
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   262
     by the UIPainter of ST/X."
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   263
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   264
    "Do not manually edit this!! If it is corrupted,
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   265
     the UIPainter may not be able to read the specification."
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   266
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   267
    "
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   268
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#versionMergedLabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   269
     Tools::TextDiff3Tool new openInterface:#versionMergedLabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   270
    "
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   271
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   272
    <resource: #canvas>
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   273
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   274
    ^ 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   275
     #(FullSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   276
        name: versionMergedLabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   277
        window: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   278
       (WindowSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   279
          label: 'Merge'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   280
          name: 'Merge'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   281
          min: (Point 10 10)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   282
          bounds: (Rectangle 0 0 774 30)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   283
        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   284
        component: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   285
       (SpecCollection
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   286
          collection: (
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   287
           (LabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   288
              label: 'versionMerged24x24'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   289
              name: 'VersionMergedIcon'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   290
              layout: (LayoutFrame 0 0 -12 0.5 27 0 12 0.5)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   291
              hasCharacterOrientedLabel: false
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   292
              translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   293
            )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   294
           (LabelSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   295
              label: 'Merge'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   296
              name: 'VersionMergeLabel'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   297
              layout: (LayoutFrame 30 0 5 0 -350 1 0 1)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   298
              translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   299
              labelChannel: labelMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   300
              resizeForLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   301
              adjust: left
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   302
              useDynamicPreferredWidth: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   303
              usePreferredWidth: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   304
            )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   305
           (HorizontalPanelViewSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   306
              name: 'HorizontalPanel1'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   307
              layout: (LayoutFrame -350 1 0 0 0 1 0 1)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   308
              horizontalLayout: center
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   309
              verticalLayout: center
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   310
              horizontalSpace: 3
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   311
              verticalSpace: 3
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   312
              component: 
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   313
             (SpecCollection
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   314
                collection: (
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   315
                 (ActionButtonSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   316
                    label: 'Merge'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   317
                    name: 'MergeAuto'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   318
                    translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   319
                    model: doMergeAuto
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   320
                    extent: (Point 80 22)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   321
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   322
                 (ActionButtonSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   323
                    label: 'Use Base'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   324
                    name: 'MergeBase'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   325
                    translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   326
                    model: doMergeUsingBase
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   327
                    extent: (Point 80 22)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   328
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   329
                 (ActionButtonSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   330
                    label: 'Use A'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   331
                    name: 'MergeUsingA'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   332
                    translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   333
                    model: doMergeUsingA
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   334
                    extent: (Point 80 22)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   335
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   336
                 (ActionButtonSpec
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   337
                    label: 'Use B'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   338
                    name: 'MergeUsingB'
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   339
                    translateLabel: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   340
                    model: doMergeUsingB
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   341
                    extent: (Point 80 22)
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   342
                  )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   343
                 )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   344
               
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   345
              )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   346
            )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   347
           )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   348
         
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   349
        )
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   350
      )
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
!TextDiff3Tool class methodsFor:'plugIn spec'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
aspectSelectors
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
    "This resource specification was automatically generated
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
     by the UIPainter of ST/X."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
    "Do not manually edit this. If it is corrupted,
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
     the UIPainter may not be able to read the specification."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    "Return a description of exported aspects;
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
     these can be connected to aspects of an embedding application
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
     (if this app is embedded in a subCanvas)."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
    ^ #(
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
        #codeAspectHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
        #labelAHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   369
        #labelBHolde
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
        #labelCHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
        #labelHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
        #languageHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
        #textAHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
        #textBHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
        #textCHolder
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   376
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   377
        #mergeHolder
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   378
        #mergeDataHolder
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   379
      ).
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   381
    "Modified: / 19-03-2012 / 11:54:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   382
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   383
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   384
!TextDiff3Tool methodsFor:'accessing'!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   385
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   386
beDiff3Tool
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   387
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   388
    self mergeHolder value: false
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   389
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   390
    "Created: / 17-03-2012 / 12:23:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   391
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   392
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   393
beMergeTool
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   394
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   395
    self mergeHolder value: true
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   396
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   397
    "Created: / 17-03-2012 / 12:23:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12201
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   398
!
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   399
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   400
mergeData
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   401
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   402
    ^self mergeDataHolder value
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   403
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   404
    "Created: / 20-03-2012 / 14:17:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   405
! !
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   406
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   407
!TextDiff3Tool methodsFor:'actions'!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   408
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   409
doMergeAuto
12202
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   410
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   411
    self mergeDataHolder value 
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   412
        text1: self textC text2: self textA text3: self textB.
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   413
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   414
    "Created: / 17-03-2012 / 12:55:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   415
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   416
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   417
doMergeUsingA
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   418
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   419
    | interval |
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   420
    interval := mergeService sectionInterval.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   421
    interval notNil ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   422
        self mergeData mergeUsingA: self textA interval: interval
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   423
    ] ifFalse:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   424
        self mergeData mergeUsingA: self textA
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   425
    ]
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   426
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   427
    "Created: / 17-03-2012 / 12:55:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   428
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   429
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   430
doMergeUsingB
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   431
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   432
    | interval |
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   433
    interval := mergeService sectionInterval.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   434
    interval notNil ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   435
        self mergeData mergeUsingB: self textB interval: interval
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   436
    ] ifFalse:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   437
        self mergeData mergeUsingB: self textA
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   438
    ]
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   439
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   440
    "Created: / 17-03-2012 / 12:55:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   441
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   442
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   443
doMergeUsingBase
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   444
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   445
    | interval |
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   446
    interval := mergeService sectionInterval.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   447
    interval notNil ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   448
        self mergeData mergeUsingBase: self textC interval: interval
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   449
    ] ifFalse:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   450
        self mergeData mergeUsingBase: self textC
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   451
    ]
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   452
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   453
    "Created: / 17-03-2012 / 12:55:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   454
! !
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   455
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
!TextDiff3Tool methodsFor:'aspects'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   458
mergeDataHolder
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   459
    "return/create the 'mergeDataHolder' value holder (automatically generated)"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   460
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   461
    mergeDataHolder isNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   462
        mergeDataHolder := ValueHolder new.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   463
        mergeDataHolder addDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   464
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   465
    ^ mergeDataHolder
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   466
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   467
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   468
mergeDataHolder:something
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   469
    "set the 'mergeDataHolder' value holder (automatically generated)"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   470
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   471
    |oldValue newValue|
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   472
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   473
    mergeDataHolder notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   474
        oldValue := mergeDataHolder value.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   475
        mergeDataHolder removeDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   476
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   477
    mergeDataHolder := something.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   478
    mergeDataHolder notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   479
        mergeDataHolder addDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   480
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   481
    newValue := mergeDataHolder value.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   482
    oldValue ~~ newValue ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   483
        self update:#value with:newValue from:mergeDataHolder.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   484
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   485
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   486
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
mergeHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
    "return/create the 'mergeHolder' value holder (automatically generated)"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
    mergeHolder isNil ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   491
        mergeHolder := ValueHolder with: false.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   492
        mergeHolder addDependent:self.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   493
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   494
    ^ mergeHolder
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   495
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   496
    "Modified: / 16-03-2012 / 13:24:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   498
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
mergeHolder:something
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
    "set the 'mergeHolder' value holder (automatically generated)"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   502
    |oldValue newValue|
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   503
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   504
    mergeHolder notNil ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
        oldValue := mergeHolder value.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
        mergeHolder removeDependent:self.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   508
    mergeHolder := something.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   509
    mergeHolder notNil ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
        mergeHolder addDependent:self.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
    newValue := mergeHolder value.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
    oldValue ~~ newValue ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
        self update:#value with:newValue from:mergeHolder.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
12193
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   518
!TextDiff3Tool methodsFor:'aspects-versions'!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   519
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   520
labelMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   521
    "return/create the 'labelMergedHolder' value holder (automatically generated)"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   522
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   523
    labelMergedHolder isNil ifTrue:[
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   524
        labelMergedHolder := ValueHolder with:'Merge'.
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   525
    ].
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   526
    ^ labelMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   527
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   528
    "Modified: / 17-03-2012 / 12:36:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   529
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   530
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   531
labelMergedHolder:something
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   532
    "set the 'labelMergedHolder' value holder (automatically generated)"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   533
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   534
    labelMergedHolder := something.
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   535
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   536
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   537
textMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   538
    "return/create the 'textMergedHolder' value holder (automatically generated)"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   539
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   540
    textMergedHolder isNil ifTrue:[
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   541
        textMergedHolder := ValueHolder new.
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   542
    ].
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   543
    ^ textMergedHolder
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   544
!
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   545
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   546
textMergedHolder:something
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   547
    "set the 'textMergedHolder' value holder (automatically generated)"
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   548
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   549
    textMergedHolder := something.
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   550
! !
c0bdf75cfde5 Improvements in Diff3Tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12190
diff changeset
   551
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
!TextDiff3Tool methodsFor:'change & update'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   553
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
update:something with:aParameter from:changedObject
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
    "Invoked when an object that I depend upon sends a change notification."
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   556
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   557
    "stub code automatically generated - please change as required"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   558
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   559
    changedObject == mergeHolder ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   560
        self updateViews.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   561
        self updateMergeData.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   562
        self updateCodeViewSynchronization.
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   563
         ^ self.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   564
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   565
    super update:something with:aParameter from:changedObject
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   566
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   567
    "Modified: / 19-03-2012 / 14:29:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   568
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   569
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   570
updateAfterAorBorCChanged
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   571
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   572
    (textAChanged & textBChanged & textCChanged) ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
        textAChanged := textBChanged := textCChanged := false.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   574
        self updateViews.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   575
        self isMerge ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   576
            self updateMergeData.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   577
        ].
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   578
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
    "Created: / 16-03-2012 / 15:26:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   582
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   583
updateCodeViewSynchronization
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   584
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   585
    diffView isNil ifTrue:[ ^ self ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   586
    mergeView isNil ifTrue:[ ^ self ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   587
    self isMerge ifTrue:[
12264
75581322c03b Fixes in scroll position synchronization
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12218
diff changeset
   588
"/        diffView synchronizeWith: mergeView. 
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   589
        diffView textViews do:[:e|
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   590
            mergeView synchronizeWith: e.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   591
        ]
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   592
    ] ifFalse:[
12264
75581322c03b Fixes in scroll position synchronization
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12218
diff changeset
   593
"/        diffView unsynchronizeWith: mergeView.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   594
        diffView textViews do:[:e|
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   595
            mergeView unsynchronizeWith: e.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   596
        ]
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   597
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   598
    ]
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   599
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   600
    "Created: / 19-03-2012 / 14:24:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   601
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   602
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   603
updateMergeData
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   604
    | data |
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   605
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   606
    (data := self mergeDataHolder value) isNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   607
        data := TextMergeInfo new.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   608
        data text1: self textC text2: self textA text3: self textB.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   609
        self mergeDataHolder value: data.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   610
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   611
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   612
    "Created: / 19-03-2012 / 11:52:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   613
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   614
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   615
updateViews
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   616
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
    self mergeHolder value ifTrue:[
12190
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   618
        self contentSpecHolder value: #mergeSpec
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
    ] ifFalse:[
12190
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   620
        self contentSpecHolder value: #diff3Spec
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   621
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   622
12190
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   623
    diffView notNil ifTrue:[
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   624
        diffView
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   625
            text1: self textCHolder value
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   626
            text2: self textAHolder value
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   627
            text3: self textBHolder value.
12190
2a77dea2eceb Improvements in Diff3CodeiView2 - now it highlights differences
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12179
diff changeset
   628
    ]
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   629
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   630
    "Created: / 16-03-2012 / 13:24:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   633
!TextDiff3Tool methodsFor:'hooks'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
commonPostBuild
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
    self updateViews
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
    "Created: / 16-03-2012 / 13:25:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   641
postBuildDiffView:aScrollableView
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   643
    super postBuildDiffView:aScrollableView.
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   644
    diffView notNil ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
       (self textAHolder value notNil and:[self textBHolder value notNil and:[self textCHolder value notNil]]) ifTrue:[
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   646
            diffView scrolledView
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   647
                text1: self textCHolder value
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   648
                text2: self textAHolder value
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   649
                text3: self textBHolder value
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   650
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   651
        ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   652
        self updateCodeViewSynchronization.
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   653
    ].
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
    "Created: / 16-03-2012 / 13:31:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   656
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   657
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   658
postBuildMergeView:aCodeView2
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   659
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   660
    mergeView := aCodeView2.
12269
79f87eee62e5 ChangeSetBrowser2 improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12264
diff changeset
   661
    self setupCodeView: aCodeView2.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   662
    mergeView registerService: 
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   663
                ((mergeService := MergeService new)
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   664
                    dataHolder: self mergeDataHolder;
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   665
                    yourself).
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   666
    self updateCodeViewSynchronization.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   667
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   668
    "Created: / 19-03-2012 / 11:47:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   669
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   670
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   671
!TextDiff3Tool methodsFor:'testing'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   673
isDiff3
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   674
    ^true
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   675
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   676
    "Created: / 16-03-2012 / 15:21:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   677
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   678
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   679
isMerge
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   680
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   681
    ^self mergeHolder value
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   682
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   683
    "Created: / 19-03-2012 / 11:53:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   684
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   685
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   686
!TextDiff3Tool::MergeService class methodsFor:'accessing'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   687
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   688
label
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   689
    "Answers short label - for UI"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   690
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   691
    ^'Merge Support Service'
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   692
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   693
    "Created: / 19-03-2012 / 11:48:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   694
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   695
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   696
!TextDiff3Tool::MergeService class methodsFor:'testing'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   697
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   698
isAvailable
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   699
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   700
    ^false "/Should be installed explicitly"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   701
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   702
    "Created: / 19-03-2012 / 11:45:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   703
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   704
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   705
!TextDiff3Tool::MergeService methodsFor:'accessing'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   706
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   707
infoAtLine: lineNr
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   708
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   709
    ^(lineNr between: 1 and: data listInfos size) ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   710
        data listInfos at: lineNr
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   711
    ] ifFalse:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   712
        nil
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   713
    ]
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   714
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   715
    "Created: / 19-03-2012 / 13:15:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   716
!
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   717
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   718
sectionInterval
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   719
    ^ sectionInterval
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   720
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   721
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   722
!TextDiff3Tool::MergeService methodsFor:'aspects'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   723
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   724
dataHolder
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   725
    "return/create the 'dataHolder' value holder (automatically generated)"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   726
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   727
    dataHolder isNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   728
        dataHolder := ValueHolder new.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   729
        dataHolder addDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   730
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   731
    ^ dataHolder
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   732
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   733
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   734
dataHolder:something
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   735
    "set the 'dataHolder' value holder (automatically generated)"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   736
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   737
    |oldValue newValue|
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   738
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   739
    dataHolder notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   740
        oldValue := dataHolder value.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   741
        dataHolder removeDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   742
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   743
    dataHolder := something.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   744
    dataHolder notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   745
        dataHolder addDependent:self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   746
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   747
    newValue := dataHolder value.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   748
    oldValue ~~ newValue ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   749
        self update:#value with:newValue from:dataHolder.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   750
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   751
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   752
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   753
!TextDiff3Tool::MergeService methodsFor:'change & update'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   754
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   755
dataChanged
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   756
    "Merge data has changes, update text view"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   757
    | changed |
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   758
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   759
    textView isNil ifTrue:[ 
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   760
        ^ self  "/not yet registered
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   761
    ]. 
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   762
    data isNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   763
        textView list: #().
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   764
        ^self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   765
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   766
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   767
    "/Collect conflicted lines"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   768
    changed := data listInfos 
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   769
                select:[:info|info isConflict]
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   770
                thenCollect:[:info|info line].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   771
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   772
    textView changedLines: changed.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   773
    textView diffMode: true.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   774
    textView list: data list.
12201
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   775
    textView invalidate.
283826cb8bcc Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12198
diff changeset
   776
    gutterView invalidate.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   777
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   778
    "Created: / 19-03-2012 / 12:41:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   779
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   780
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   781
dataHolderChanged
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   782
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   783
    data notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   784
        data removeDependent: self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   785
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   786
    data := dataHolder value.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   787
    data notNil ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   788
        data addDependent: self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   789
    ].
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   790
    sectionInterval := nil.
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   791
    self dataChanged
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   792
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   793
    "Created: / 19-03-2012 / 11:56:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   794
!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   795
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   796
update:something with:aParameter from:changedObject
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   797
    "Invoked when an object that I depend upon sends a change notification."
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   798
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   799
    "stub code automatically generated - please change as required"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   800
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   801
    changedObject == dataHolder ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   802
         self dataHolderChanged.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   803
         ^ self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   804
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   805
    changedObject == data ifTrue:[
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   806
         self dataChanged.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   807
         ^ self.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   808
    ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   809
    super update:something with:aParameter from:changedObject
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   810
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   811
    "Modified: / 19-03-2012 / 12:41:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   812
!
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   813
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   814
updateSelection: lineNr
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   815
    "For given number, update sectionInterval"
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   816
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   817
    | conflict |
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   818
    lineNr notNil ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   819
        conflict := (self infoAtLine: lineNr) conflict.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   820
    ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   821
    lineNr isNil"conflict isNil" ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   822
        sectionInterval := nil
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   823
    ] ifFalse:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   824
        | start stop i |
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   825
        i := lineNr - 1.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   826
        [ i > 0 and:[ (self infoAtLine: i) conflict == conflict ]] 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   827
            whileTrue:[ i := i - 1 ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   828
        start := i + 1.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   829
        i := lineNr + 1.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   830
        [ i < (data listInfos size)  and:[ (self infoAtLine: i) conflict == conflict ]] 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   831
            whileTrue:[ i := i + 1 ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   832
        stop := i - 1.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   833
        sectionInterval := start to: stop.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   834
    ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   835
    gutterView invalidate.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   836
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   837
    "Created: / 03-04-2012 / 19:29:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   838
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   839
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   840
!TextDiff3Tool::MergeService methodsFor:'drawing'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   841
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   842
drawLine:lineNo in:view atX:x y:y width:w height:h from:startCol to:endColOrNil with:fg and:bg 
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   843
    "Called by both gutterView and textView (well, not yet) to
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   844
     allow services to draw custom things on text view.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   845
     Ask JV what the args means if unsure (I'm lazy to document
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   846
     them, now it is just an experiment...)"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   847
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   848
    | info color |
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   849
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   850
    view == gutterView ifFalse:[ ^ self ].
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   851
    info := self infoAtLine: lineNo.
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   852
    info notNil ifTrue:[ 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   853
        color := info color.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   854
        color notNil ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   855
            view fillRectangleX: x y:y - h 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   856
                    width: 8 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   857
                    height:h + textView lineSpacing + 5"Magic constant to make it look nicer"
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   858
                    color: color.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   859
        ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   860
    ].
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   861
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   862
    (sectionInterval notNil and:[sectionInterval includes: lineNo]) ifTrue:[
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   863
            "Drawing outside annotation area is not nice, but..."
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   864
            view fillRectangleX:view width - 7 y:y - h 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   865
                width:4 
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   866
                height:h + textView lineSpacing + 5"Magic constant to make it look nicer"
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   867
                color: Color gray.
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   868
    ]
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   869
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   870
    "Created: / 19-03-2012 / 13:15:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   871
! !
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   872
12202
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   873
!TextDiff3Tool::MergeService methodsFor:'event handling'!
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   874
12218
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   875
buttonPress: button x:x y:y in: view
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   876
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   877
    "Handles an event in given view (a subview of codeView).
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   878
     If the method returns true, it has eaten the event and it will not be processed
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   879
     by the view."
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   880
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   881
    |lineNr|
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   882
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   883
    view == gutterView ifFalse:[ ^ false ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   884
    button == 1 ifFalse:[ ^ false ].
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   885
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   886
    self updateSelection: (textView yVisibleToLineNr:y).
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   887
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   888
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   889
    ^false
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   890
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   891
    "Created: / 03-04-2012 / 19:23:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   892
!
8b88c30fb1e7 Improvements in text merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12203
diff changeset
   893
12202
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   894
linesModifiedFrom: start to: end
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   895
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   896
    start to: end do:[:i|
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   897
        (data listInfos at:i) resolution: #Merged.
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   898
    ].
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   899
    gutterView invalidate.
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   900
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   901
    "Created: / 06-07-2011 / 17:14:36 / jv"
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   902
    "Created: / 20-03-2012 / 22:57:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   903
! !
eaa1f6cb6ce8 Improvements in merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12201
diff changeset
   904
12198
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   905
!TextDiff3Tool::MergeService methodsFor:'registering'!
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   906
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   907
registerIn: aCodeView
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   908
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   909
    "Installs myself in aCodeView"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   910
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   911
    super registerIn: aCodeView.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   912
    self dataChanged.
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   913
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   914
    "Modified: / 17-06-2011 / 13:07:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
414e7b69ecda Text/ChangeSet diff improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12193
diff changeset
   915
    "Created: / 19-03-2012 / 12:52:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   916
! !
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   917
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   918
!TextDiff3Tool class methodsFor:'documentation'!
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   919
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   920
version_SVN
12269
79f87eee62e5 ChangeSetBrowser2 improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12264
diff changeset
   921
    ^ '$Id: Tools__TextDiff3Tool.st 8027 2012-07-26 18:46:57Z vranyj1 $'
12179
47f98e7d6de1 Improvments towards merge tool
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   922
! !