Tools__TextDiff3Tool.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 12 Feb 2014 18:26:19 +0100
changeset 13927 78883c6c8297
parent 13794 7c2c30ca4c2e
child 14039 82567b14e97b
permissions -rw-r--r--
Bug fixes: - fixes DNU on click to list when useInPlaceSearchInLists preference is false (off) - fixes 'Show Conflicts Only'
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
              All Rights Reserved
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
 hereby transferred.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
"{ NameSpace: Tools }"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
TextDiffTool subclass:#TextDiff3Tool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	instanceVariableNames:'labelMergedHolder textMergedHolder mergeHolder mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
		mergeIntervalHolder mergeView mergeService'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	classVariableNames:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	poolDictionaries:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
	category:'Interface-Diff'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
CodeViewService subclass:#MergeService
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
	instanceVariableNames:'dataHolder data sectionIntervalHolder'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
	classVariableNames:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	poolDictionaries:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
	privateIn:TextDiff3Tool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!TextDiff3Tool class methodsFor:'documentation'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
copyright
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
 COPYRIGHT (c) 2006 by eXept Software AG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
              All Rights Reserved
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
 This software is furnished under a license and may be used
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
 only in accordance with the terms of that license and with the
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
 inclusion of the above copyright notice.   This software may not
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
 be provided or otherwise made available to, or used by, any
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
 other person.  No title to or ownership of the software is
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
 hereby transferred.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
documentation
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
    documentation to be added.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    [author:]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
        Jan Vrany <jan.vrany@fit.cvut.cz>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    [instance variables:]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    [class variables:]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    [see also:]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
examples
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
  Starting the application:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
                                                                [exBegin]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    Tools::TextDiff3Tool open
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
                                                                [exEnd]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
  more examples to be added:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
                                                                [exBegin]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    ... add code fragment for 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    ... executable example here ...
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
                                                                [exEnd]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
!TextDiff3Tool class methodsFor:'defaults - colors'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
colorA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    ^(Color red:54.1176470588235 green:75.2941176470588 blue:28.6274509803922) lighter
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
    "Created: / 19-03-2012 / 13:11:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
colorB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    ^(Color red:96.078431372549 green:73.7254901960784 blue:0.0) lighter
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    "Created: / 19-03-2012 / 13:11:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
colorBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    ^(Color red:5.88235294117647 green:58.8235294117647 blue:80.3921568627451) lighter
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    "Created: / 19-03-2012 / 13:12:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
colorConflict
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    ^Color red
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    "Created: / 19-03-2012 / 13:12:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
colorMerged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
    ^(Color red:83.921568627451 green:17.2549019607843 blue:85.0980392156863) lighter
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
    "Created: / 19-03-2012 / 13:11:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
!TextDiff3Tool class methodsFor:'interface specs'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    "Do not manually edit this!! If it is corrupted,
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
     the UIPainter may not be able to read the specification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
     Tools::TextDiff3Tool new openInterface:#diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
        name: diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
          label: 'Text Diff Tool (for embedding)'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
          name: 'Text Diff Tool (for embedding)'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
          bounds: (Rectangle 0 0 782 506)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
           (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
              name: '3Labels'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
              layout: (LayoutFrame 0 0 0 0 -16 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
              component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
             (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
                collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
                    name: 'VersionC'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
                    layout: (LayoutFrame 0 0 0 0 0 0.33333 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
                    minorKey: versionCLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
                    name: 'VersionA'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
                    layout: (LayoutFrame 5 0.3333 0 0 0 0.67 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
                    minorKey: versionALabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
                    name: 'VersionB'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
                    layout: (LayoutFrame 5 0.67 0 0 0 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
                    minorKey: versionBLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
                 )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
               
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
           (ArbitraryComponentSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
              name: 'Diff3TextView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
              layout: (LayoutFrame 0 0 30 0 0 1 0 1)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
              hasHorizontalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
              hasVerticalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
              autoHideScrollBars: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
              hasBorder: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
              component: diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
              postBuildCallback: postBuildDiffView:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
           )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
         
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
      )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
    "Do not manually edit this!! If it is corrupted,
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
     the UIPainter may not be able to read the specification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
     Tools::TextDiff3Tool new openInterface:#mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
        name: mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
          label: 'Merge view'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
          name: 'Merge view'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
          bounds: (Rectangle 0 0 782 506)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
           (VariableVerticalPanelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
              name: 'DiffAndMergePanel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
              layout: (LayoutFrame 0 0 30 0 0 1 0 1)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
              component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
             (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
                collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
                 (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
                    name: 'Box1'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
                    component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
                   (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
                      collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
                       (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
                          name: '3Labels'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
                          layout: (LayoutFrame 0 0 0 0 -16 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
                          component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
                         (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
                            collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
                                name: 'VersionC'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
                                layout: (LayoutFrame 0 0 0 0 0 0.33333 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
                                minorKey: versionCLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
                              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
                                name: 'VersionA'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
                                layout: (LayoutFrame 5 0.3333 0 0 0 0.67 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
                                minorKey: versionALabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
                              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
                                name: 'VersionB'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
                                layout: (LayoutFrame 5 0.67 0 0 0 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
                                minorKey: versionBLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
                              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
                             )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
                           
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
                          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   249
                       (ArbitraryComponentSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
                          name: 'Diff3TextView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
                          layout: (LayoutFrame 0 0 30 0 0 1 0 1)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
                          hasHorizontalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
                          hasVerticalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
                          autoHideScrollBars: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
                          hasBorder: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
                          component: diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
                          postBuildCallback: postBuildDiffView:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
                       )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   260
                     
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   261
                    )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   262
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   263
                 (TransparentBoxSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
                    name: 'MergeView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
                    component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
                   (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
                      collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
                       (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
                          name: 'MergeLabel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
                          layout: (LayoutFrame 0 0 0 0 0 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
                          minorKey: versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
                       (TextEditorSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
                          name: 'MergeCode'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
                          layout: (LayoutFrame 0 0 30 0 0 1 0 1)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
                          model: textMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
                          hasHorizontalScrollBar: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
                          hasVerticalScrollBar: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
                          hasKeyboardFocusInitially: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
                          viewClassName: 'Tools::CodeView2'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
                          postBuildCallback: postBuildMergeView:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
                       )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   284
                     
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   285
                    )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   286
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   287
                 )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   288
               
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   289
              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
              handles: (Any 0.5 1.0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   291
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
           (MenuPanelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
              name: 'ToolBar'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
              layout: (LayoutFrame 0 0 0 0 0 1 30 0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
              menu: toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
              textDefault: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
           )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
         
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   300
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
      )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
    "Modified: / 17-01-2013 / 20:32:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
!TextDiff3Tool class methodsFor:'interface specs - labels'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
    "Do not manually edit this!! If it is corrupted,
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
     the UIPainter may not be able to read the specification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   315
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   316
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
     Tools::TextDiff3Tool new openInterface:#versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   318
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   319
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   322
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   323
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   324
        name: versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   325
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   326
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   327
          label: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   328
          name: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   329
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   330
          bounds: (Rectangle 0 0 774 30)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   331
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   332
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   333
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   334
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   335
           (LabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   336
              label: 'versionMerged24x24'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
              name: 'VersionMergedIcon'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
              layout: (LayoutFrame 0 0 -12 0.5 27 0 12 0.5)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
              hasCharacterOrientedLabel: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
              translateLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   341
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
           (LabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
              label: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
              name: 'VersionMergeLabel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
              layout: (LayoutFrame 30 0 5 0 157 0 0 1)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
              translateLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
              labelChannel: labelMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
              resizeForLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
              adjust: left
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
              useDynamicPreferredWidth: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
              usePreferredWidth: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
           )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
         
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
      )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
!TextDiff3Tool class methodsFor:'menu specs'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
     by the MenuEditor of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
    "Do not manually edit this!! If it is corrupted,
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
     the MenuEditor may not be able to read the specification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   369
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
     MenuEditor new openOnClass:Tools::TextDiff3Tool andSelector:#toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
     (Menu new fromLiteralArrayEncoding:(Tools::TextDiff3Tool toolbarMenuMerge)) startUp
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
    <resource: #menu>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   376
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
     #(Menu
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   378
        (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   379
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   381
            label: 'Use Base for Current Delta'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   382
            itemValue: doMergeCurrentUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   383
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   384
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBase24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   385
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   386
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   387
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   388
            label: 'Use A for Current '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   389
            itemValue: doMergeCurrentUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   390
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   391
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingA24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   392
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   393
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   394
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   395
            label: 'Use B for Current '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   396
            itemValue: doMergeCurrentUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   397
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   398
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingB24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   400
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   401
            label: 'Use Base Everywhere'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   402
            itemValue: doMergeAllUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   403
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   404
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   405
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBaseAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   406
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   407
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   408
            label: 'Use A Everywhere'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   409
            itemValue: doMergeAllUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   410
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   411
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   412
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingAAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   413
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   414
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   415
            label: 'Use Be Everywhere '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   416
            itemValue: doMergeAllUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   417
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   418
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   419
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   420
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   421
            label: 'Auto Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   422
            itemValue: doMergeAllAuto
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   423
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   424
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   425
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeMerge24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   426
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   427
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   428
            label: 'External Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   429
            itemValue: doMergeAllExternal
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   430
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   431
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   432
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeMergeExternal24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   433
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   434
         )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   435
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   436
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   437
      )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   438
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   439
    "Modified: / 17-01-2013 / 22:31:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   440
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   441
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   442
!TextDiff3Tool class methodsFor:'plugIn spec'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   443
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   444
aspectSelectors
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   445
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   446
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   447
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   448
    "Do not manually edit this. If it is corrupted,
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   449
     the UIPainter may not be able to read the specification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   450
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   451
    "Return a description of exported aspects;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   452
     these can be connected to aspects of an embedding application
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   453
     (if this app is embedded in a subCanvas)."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   454
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   455
    ^ #(
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
        #codeAspectHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
        #labelAHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   458
        #labelBHolde
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   459
        #labelCHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   460
        #labelHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   461
        #languageHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   462
        #mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   463
        #mergeHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   464
        #textAHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   465
        #textBHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   466
        #textCHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   467
      ).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   468
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   469
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   470
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   471
!TextDiff3Tool methodsFor:'accessing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   472
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   473
beDiff3Tool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   474
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   475
    self mergeHolder value: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   476
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   477
    "Created: / 17-03-2012 / 12:23:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   478
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   479
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   480
beMergeTool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   481
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   482
    self mergeHolder value: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   483
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   484
    "Created: / 17-03-2012 / 12:23:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   485
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   486
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
mergeData
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
    ^self mergeDataHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   491
    "Created: / 20-03-2012 / 14:17:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   492
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   493
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   494
!TextDiff3Tool methodsFor:'aspects'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   495
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   496
contentSpecHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
    "return/create the 'contentSpecHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   498
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
    contentSpecHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
        contentSpecHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
        self mergeHolder value 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   502
            ifTrue:[contentSpecHolder setValue: #mergeSpec]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   503
            ifFalse:[contentSpecHolder setValue: #diff3Spec].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   504
        contentSpecHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
    ^ contentSpecHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   508
    "Created: / 17-01-2013 / 20:20:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   509
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
    diffView notNil  ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
        self breakPoint: #jv.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
    diffView := self initializeDiffView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
    ^diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518
    "Created: / 17-01-2013 / 20:24:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   519
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   521
mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
    "return/create the 'mergeDataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
    mergeDataHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
        mergeDataHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
        mergeDataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   527
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   528
    ^ mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   529
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   530
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   531
mergeDataHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   532
    "set the 'mergeDataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   533
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   534
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   535
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   536
    mergeDataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   537
        oldValue := mergeDataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   538
        mergeDataHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   539
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   540
    mergeDataHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   541
    mergeDataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   542
        mergeDataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   543
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   544
    newValue := mergeDataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   545
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   546
        self update:#value with:newValue from:mergeDataHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   547
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   548
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   549
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   550
mergeHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
    "return/create the 'mergeHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   553
    mergeHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
        mergeHolder := ValueHolder with: false.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
        mergeHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   556
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   557
    ^ mergeHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   558
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   559
    "Modified: / 16-03-2012 / 13:24:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   560
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   561
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   562
mergeHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   563
    "set the 'mergeHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   564
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   565
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   566
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   567
    mergeHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   568
        oldValue := mergeHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   569
        mergeHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   570
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   571
    mergeHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   572
    mergeHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
        mergeHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   574
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   575
    newValue := mergeHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   576
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   577
        self update:#value with:newValue from:mergeHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   578
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   582
    "return/create the 'mergeIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   583
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   584
    mergeIntervalHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   585
        mergeIntervalHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   586
        mergeIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   587
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   588
    ^ mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   589
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   590
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   591
mergeIntervalHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   592
    "set the 'mergeIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   593
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   594
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   595
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   596
    mergeIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   597
        oldValue := mergeIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   598
        mergeIntervalHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   599
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   600
    mergeIntervalHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   601
    mergeIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   602
        mergeIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   603
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   604
    newValue := mergeIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   605
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   606
        self update:#value with:newValue from:mergeIntervalHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   607
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   608
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   609
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   610
!TextDiff3Tool methodsFor:'aspects - queries'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   611
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   612
canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
    ^self builder bindings at:#canMergeCurrentHolder ifAbsentPut:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
        BlockValue
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   615
            with:[:model|model value notNil]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   616
            argument: self mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   618
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
    "Created: / 30-11-2012 / 13:49:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   620
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   621
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   622
!TextDiff3Tool methodsFor:'aspects-versions'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   623
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   624
labelMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   625
    "return/create the 'labelMergedHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   626
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   627
    labelMergedHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   628
        labelMergedHolder := ValueHolder with:'Merge'.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   629
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   630
    ^ labelMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
    "Modified: / 17-03-2012 / 12:36:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   633
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
labelMergedHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
    "set the 'labelMergedHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
    labelMergedHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   641
textMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
    "return/create the 'textMergedHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   643
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   644
    textMergedHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
        textMergedHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   646
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   647
    ^ textMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   648
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   649
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   650
textMergedHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   651
    "set the 'textMergedHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   652
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   653
    textMergedHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   656
!TextDiff3Tool methodsFor:'change & update'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   657
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   658
update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   659
    "Invoked when an object that I depend upon sends a change notification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   660
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   661
    "stub code automatically generated - please change as required"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   662
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   663
    changedObject == mergeHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   664
        self updateViews.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   665
        self updateMergeData.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   666
        self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   667
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   668
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   669
    super update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   670
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   671
    "Modified: / 19-03-2012 / 14:29:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   673
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   674
updateAfterAorBorCChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   675
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   676
    (textAChanged & textBChanged & textCChanged) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   677
        textAChanged := textBChanged := textCChanged := false.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   678
        self updateViews.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   679
        self isMerge ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   680
            self updateMergeData.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   681
        ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   682
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   683
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   684
    "Created: / 16-03-2012 / 15:26:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   685
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   686
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   687
updateCodeViewSynchronization
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   688
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   689
    diffView isNil ifTrue:[ ^ self ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   690
    mergeView isNil ifTrue:[ ^ self ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   691
    self isMerge ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   692
"/        diffView synchronizeWith: mergeView. 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   693
        diffView textViews do:[:e|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   694
            mergeView synchronizeWith: e.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   695
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   696
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   697
"/        diffView unsynchronizeWith: mergeView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   698
        diffView textViews do:[:e|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   699
            mergeView unsynchronizeWith: e.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   700
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   701
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   702
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   703
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   704
    "Created: / 19-03-2012 / 14:24:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   705
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   706
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   707
updateMergeData
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   708
    | data |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   709
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   710
    (data := self mergeDataHolder value) isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   711
        data := TextMergeInfo new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   712
        data text1: self textC text2: self textA text3: self textB.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   713
        self mergeDataHolder value: data.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   714
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   715
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   716
    "Created: / 19-03-2012 / 11:52:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   717
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   718
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   719
updateViews
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   720
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   721
    self mergeHolder value ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   722
        self contentSpecHolder value: #mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   723
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   724
        self contentSpecHolder value: #diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   725
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   726
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   727
    diffView notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   728
        diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   729
            text1: self textCHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   730
            text2: self textAHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   731
            text3: self textBHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   732
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   733
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   734
    "Created: / 16-03-2012 / 13:24:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   735
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   736
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   737
!TextDiff3Tool methodsFor:'hooks'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   738
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   739
commonPostBuild
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   740
    self updateViews
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   741
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   742
    "Created: / 16-03-2012 / 13:25:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   743
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   744
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   745
postBuildDiffView:aScrollableView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   746
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   747
    super postBuildDiffView:aScrollableView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   748
    diffView := aScrollableView scrolledView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   749
    diffView notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   750
       (self textAHolder value notNil and:[self textBHolder value notNil and:[self textCHolder value notNil]]) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   751
            diffView scrolledView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   752
                text1: self textCHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   753
                text2: self textAHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   754
                text3: self textBHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   755
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   756
        ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   757
        self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   758
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   759
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   760
    "Created: / 16-03-2012 / 13:31:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   761
    "Modified: / 17-01-2013 / 20:31:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   762
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   763
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   764
postBuildMergeView:aCodeView2
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   765
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   766
    mergeView := aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   767
    self setupCodeView: aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   768
    mergeView registerService: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   769
                ((mergeService := MergeService new)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   770
                    dataHolder: self mergeDataHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
                    sectionIntervalHolder: self mergeIntervalHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   772
                    yourself).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   773
    self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   774
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   775
    "Created: / 19-03-2012 / 11:47:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   776
    "Modified: / 30-11-2012 / 13:47:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   777
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   778
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   779
!TextDiff3Tool methodsFor:'initialization'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   780
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   781
initializeDiffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   782
    "superclass Tools::TextDiffTool says that I am responsible to implement this method"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   783
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   784
    ^ Tools::Diff3CodeView2 new
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   785
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   786
    "Modified: / 16-01-2013 / 09:52:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   787
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   788
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   789
!TextDiff3Tool methodsFor:'menu actions'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   790
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   791
doMergeAllAuto
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   792
    self mergeDataHolder value 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   793
        text1:self textC
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   794
        text2:self textA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   795
        text3:self textB.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   796
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   797
    "Created: / 17-03-2012 / 12:55:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   798
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   799
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   800
doMergeAllExternal
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   801
    | left wc right merge |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   802
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   803
    left := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   804
    left writingFileDo:[:s|s nextPutAll: self textC ? ''].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   805
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   806
    wc := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   807
    wc writingFileDo:[:s|s nextPutAll: self textA ? ''].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   808
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   809
    right := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   810
    right writingFileDo:[:s|s nextPutAll: self textB ? ''].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   811
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   812
    merge := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   813
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   814
    [
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   815
        (OperatingSystem executeCommand:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   816
                ('%1 %2 %3 %4 -o %5'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   817
                    bindWith: 'kdiff3'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   818
                        with: left pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   819
                        with: wc pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   820
                        with: right pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   821
                        with: merge pathName)) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   822
            merge exists ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   823
                self mergeData mergeUsing: merge contents asString
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   824
            ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   825
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   826
    ] ensure:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   827
        left remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   828
        wc remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   829
        right remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   830
        merge exists ifTrue:[merge remove].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   831
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   832
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   833
    "Modified: / 16-01-2013 / 10:02:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   834
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   835
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   836
doMergeAllUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   837
    self mergeData mergeUsingA: self textA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   838
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   839
    "Created: / 30-11-2012 / 13:33:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   840
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   841
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   842
doMergeAllUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   843
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   844
    self mergeData mergeUsingB: self textB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   845
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   846
    "Created: / 30-11-2012 / 13:33:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   847
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   848
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   849
doMergeAllUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   850
    self mergeData mergeUsingBase: self textC
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   851
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   852
    "Created: / 30-11-2012 / 13:33:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   853
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   854
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   855
doMergeCurrentUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   856
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   857
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   858
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   859
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   860
        self mergeData mergeUsingA: self textA interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   861
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   862
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   863
    "Created: / 30-11-2012 / 13:33:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   864
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   865
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   866
doMergeCurrentUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   867
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   868
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   869
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   870
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   871
        self mergeData mergeUsingB: self textB interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   872
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   873
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   874
    "Created: / 30-11-2012 / 13:33:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   875
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   876
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   877
doMergeCurrentUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   878
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   879
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   880
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   881
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   882
        self mergeData mergeUsingBase: self textC interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   883
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   884
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   885
    "Created: / 30-11-2012 / 13:34:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   886
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   887
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   888
!TextDiff3Tool methodsFor:'testing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   889
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   890
isDiff3
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   891
    ^true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   892
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   893
    "Created: / 16-03-2012 / 15:21:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   894
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   895
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   896
isMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   897
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   898
    ^self mergeHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   899
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   900
    "Created: / 19-03-2012 / 11:53:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   901
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   902
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   903
!TextDiff3Tool::MergeService class methodsFor:'accessing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   904
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   905
label
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   906
    "Answers short label - for UI"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   907
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   908
    ^'Merge Support Service'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   909
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   910
    "Created: / 19-03-2012 / 11:48:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   911
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   912
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   913
!TextDiff3Tool::MergeService class methodsFor:'queries'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   914
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   915
isUsefulFor:aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   916
    "this filters useful services.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   917
     must be redefined to return true in subclasses (but each class must do it only
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   918
     for itself - not for subclasses"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   919
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   920
    ^ self == Tools::TextDiff3Tool::MergeService
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   921
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   922
    "Created: / 23-08-2013 / 10:56:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   923
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   924
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   925
!TextDiff3Tool::MergeService class methodsFor:'testing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   926
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   927
isAvailable
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   928
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   929
    ^false "/Should be installed explicitly"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   930
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   931
    "Created: / 19-03-2012 / 11:45:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   932
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   933
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   934
!TextDiff3Tool::MergeService methodsFor:'accessing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   935
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   936
infoAtLine: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   937
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   938
    data isNil ifTrue:[ ^ nil ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   939
    ^(lineNr between: 1 and: data listInfos size) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   940
        data listInfos at: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   941
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   942
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   943
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   944
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   945
    "Created: / 19-03-2012 / 13:15:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   946
    "Modified: / 23-08-2013 / 11:01:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   947
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   948
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   949
sectionInterval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   950
    ^ sectionIntervalHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   951
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   952
    "Modified: / 30-11-2012 / 13:45:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   953
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   954
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   955
sectionInterval: anObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   956
    ^ self sectionIntervalHolder value: anObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   957
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   958
    "Created: / 30-11-2012 / 13:45:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   959
    "Modified: / 15-01-2013 / 11:50:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   960
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   961
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   962
!TextDiff3Tool::MergeService methodsFor:'aspects'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   963
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   964
dataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   965
    "return/create the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   966
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   967
    dataHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   968
        dataHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   969
        dataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   970
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   971
    ^ dataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   972
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   973
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   974
dataHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   975
    "set the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   976
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   977
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   978
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   979
    dataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   980
        oldValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   981
        dataHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   982
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   983
    dataHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   984
    dataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   985
        dataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   986
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   987
    newValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   988
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   989
        self update:#value with:newValue from:dataHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   990
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   991
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   992
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   993
sectionIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   994
    "return/create the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   995
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   996
    sectionIntervalHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   997
        sectionIntervalHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   998
        sectionIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   999
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1000
    ^ sectionIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1001
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1002
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1003
sectionIntervalHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1004
    "set the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1005
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1006
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1007
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1008
    sectionIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1009
        oldValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1010
        sectionIntervalHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1011
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1012
    sectionIntervalHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1013
    sectionIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1014
        sectionIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1015
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1016
    newValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1017
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1018
        self update:#value with:newValue from:sectionIntervalHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1019
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1020
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1021
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1022
!TextDiff3Tool::MergeService methodsFor:'change & update'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1023
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1024
dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1025
    "Merge data has changes, update text view"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1026
    | changed |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1027
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1028
    textView isNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1029
        ^ self  "/not yet registered
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1030
    ]. 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1031
    data isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1032
        textView list: #().
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1033
        ^self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1034
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1035
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1036
    "/Collect conflicted lines"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1037
    changed := data listInfos 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1038
                select:[:info|info isConflict]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1039
                thenCollect:[:info|info line].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1040
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1041
    textView changedLines: changed.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1042
    textView diffMode: true.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1043
    textView list: data list.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1044
    textView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1045
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1046
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1047
    "Created: / 19-03-2012 / 12:41:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1048
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1049
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1050
dataHolderChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1051
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1052
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1053
        data removeDependent: self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1054
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1055
    data := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1056
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1057
        data addDependent: self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1058
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1059
    self sectionInterval: nil.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1060
    self dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1061
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1062
    "Created: / 19-03-2012 / 11:56:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1063
    "Modified: / 30-11-2012 / 13:46:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1064
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1065
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1066
update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1067
    "Invoked when an object that I depend upon sends a change notification."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1068
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1069
    "stub code automatically generated - please change as required"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1070
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1071
    changedObject == dataHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1072
         self dataHolderChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1073
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1074
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1075
    changedObject == data ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1076
         self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1077
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1078
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1079
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1080
    changedObject == sectionIntervalHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1081
        gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1082
        ^self
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1083
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1084
    super update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1085
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1086
    "Modified: / 30-11-2012 / 13:45:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1087
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1088
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1089
updateSelection: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1090
    "For given number, update sectionInterval"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1091
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1092
    | conflict |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1093
    lineNr notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1094
        conflict := (self infoAtLine: lineNr) conflict.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1095
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1096
    lineNr isNil"conflict isNil" ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1097
        self sectionInterval: nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1098
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1099
        | start stop i |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1100
        i := lineNr - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1101
        [ i > 0 and:[ (self infoAtLine: i) conflict == conflict ]] 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1102
            whileTrue:[ i := i - 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1103
        start := i + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1104
        i := lineNr + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1105
        [ i < (data listInfos size)  and:[ (self infoAtLine: i) conflict == conflict ]] 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1106
            whileTrue:[ i := i + 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1107
        stop := i - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1108
        self sectionInterval: (start to: stop).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1109
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1110
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1111
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1112
    "Created: / 03-04-2012 / 19:29:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1113
    "Modified: / 30-11-2012 / 13:45:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1114
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1115
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1116
!TextDiff3Tool::MergeService methodsFor:'drawing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1117
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1118
drawLine:lineNo in:view atX:x y:y width:w height:h from:startCol to:endColOrNil with:fg and:bg 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1119
    "Called by both gutterView and textView (well, not yet) to
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1120
     allow services to draw custom things on text view.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1121
     Ask JV what the args means if unsure (I'm lazy to document
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1122
     them, now it is just an experiment...)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1123
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1124
    | info color sectionInterval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1125
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1126
    sectionInterval := self sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1127
    view == gutterView ifFalse:[ ^ self ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1128
    info := self infoAtLine: lineNo.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1129
    info notNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1130
        color := info color.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1131
        color notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1132
            view fillRectangleX: x y:y - h 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1133
                    width: 8 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1134
                    height:h + textView lineSpacing + 5"Magic constant to make it look nicer"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1135
                    color: color.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1136
        ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1137
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1138
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1139
    (sectionInterval notNil and:[sectionInterval includes: lineNo]) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1140
            "Drawing outside annotation area is not nice, but..."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1141
            view fillRectangleX:view width - 7 y:y - h 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1142
                width:4 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1143
                height:h + textView lineSpacing + 5"Magic constant to make it look nicer"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1144
                color: Color gray.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1145
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1146
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1147
    "Created: / 19-03-2012 / 13:15:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1148
    "Modified: / 30-11-2012 / 13:46:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1149
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1150
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1151
!TextDiff3Tool::MergeService methodsFor:'event handling'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1152
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1153
buttonPress: button x:x y:y in: view
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1154
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1155
    "Handles an event in given view (a subview of codeView).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1156
     If the method returns true, it has eaten the event and it will not be processed
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1157
     by the view."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1158
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1159
    |lineNr|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1160
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1161
    view == gutterView ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1162
    button == 1 ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1163
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1164
    self updateSelection: (textView yVisibleToLineNr:y).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1165
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1166
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1167
    ^false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1168
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1169
    "Created: / 03-04-2012 / 19:23:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1170
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1171
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1172
linesModifiedFrom: start to: end
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1173
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1174
    start to: end do:[:i|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1175
        (data listInfos at:i) resolution: #Merged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1176
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1177
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1178
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1179
    "Created: / 06-07-2011 / 17:14:36 / jv"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1180
    "Created: / 20-03-2012 / 22:57:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1181
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1182
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1183
!TextDiff3Tool::MergeService methodsFor:'registering'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1184
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1185
registerIn: aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1186
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1187
    "Installs myself in aCodeView"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1188
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1189
    super registerIn: aCodeView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1190
    self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1191
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1192
    "Modified: / 17-06-2011 / 13:07:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1193
    "Created: / 19-03-2012 / 12:52:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1194
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1195
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1196
!TextDiff3Tool class methodsFor:'documentation'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1197
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1198
version_HG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1199
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1200
    ^ '$Changeset: <not expanded> $'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1201
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1202
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1203
version_SVN
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1204
    ^ '$Id: Tools__TextDiff3Tool.st,v 1.1 2014-02-05 18:39:57 vrany Exp $'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1205
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1206