Tools__TextDiff3Tool.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 14 Jun 2018 22:19:39 +0100
branchjv
changeset 18227 d25a407ba86d
parent 16617 69e7de1ef22f
permissions -rw-r--r--
Mini testrunner: show "green" if there's at least one pass and rest is pass or skip This is more meaningfull result then showing "gray" if there's at least one skip.
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
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
    25
	instanceVariableNames:'dataHolder data sectionIntervalHolder ignoreLinesModifiedFromTo'
13794
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
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   729
            text1: self textC
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   730
            text2: self textA
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   731
            text3: self textB.
13794
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
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   746
    |textA textB textC|
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   747
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   748
    super postBuildDiffView:aScrollableView.
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   749
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   750
    diffView := aScrollableView scrolledView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   751
    diffView notNil ifTrue:[
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   752
        textA := self textA.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   753
        textB := self textB.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   754
        textC := self textC.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   755
        (textA notNil and:[textB notNil and:[textC notNil]]) ifTrue:[
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   756
            diffView scrolledView
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   757
                text1: textC
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   758
                text2: textA
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   759
                text3: textB
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   760
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   761
        ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   762
        self updateCodeViewSynchronization.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   765
    "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
   766
    "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
   767
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   768
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   769
postBuildMergeView:aCodeView2
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   770
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
    mergeView := aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   772
    self setupCodeView: aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   773
    mergeView registerService: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   774
                ((mergeService := MergeService new)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   775
                    dataHolder: self mergeDataHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   776
                    sectionIntervalHolder: self mergeIntervalHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   777
                    yourself).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   778
    self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   779
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   780
    "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
   781
    "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
   782
! !
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
!TextDiff3Tool methodsFor:'initialization'!
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
initializeDiffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   787
    "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
   788
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   789
    ^ Tools::Diff3CodeView2 new
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
    "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
   792
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   793
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   794
!TextDiff3Tool methodsFor:'menu actions'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   795
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   796
doMergeAllAuto
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   797
    self mergeDataHolder value 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   798
        text1:self textC
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   799
        text2:self textA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   800
        text3:self textB.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   801
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   802
    "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
   803
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   804
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   805
doMergeAllExternal
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   806
    | left wc right merge |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   807
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   808
    left := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   809
    left writingFileDo:[:s|s nextPutAll: self textC ? ''].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   810
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   811
    wc := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   812
    wc writingFileDo:[:s|s nextPutAll: self textA ? ''].
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
    right := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   815
    right writingFileDo:[:s|s nextPutAll: self textB ? ''].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   816
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   817
    merge := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   818
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   819
    [
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   820
        (OperatingSystem executeCommand:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   821
                ('%1 %2 %3 %4 -o %5'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   822
                    bindWith: 'kdiff3'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   823
                        with: left pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   824
                        with: wc pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   825
                        with: right pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   826
                        with: merge pathName)) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   827
            merge exists ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   828
                self mergeData mergeUsing: merge contents asString
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   829
            ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   830
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   831
    ] ensure:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   832
        left remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   833
        wc remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   834
        right remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   835
        merge exists ifTrue:[merge remove].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   836
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   837
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   838
    "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
   839
!
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
doMergeAllUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   842
    self mergeData mergeUsingA: self textA
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
    "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
   845
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   846
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   847
doMergeAllUsingB
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
    self mergeData mergeUsingB: self textB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   850
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   851
    "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
   852
!
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
doMergeAllUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   855
    self mergeData mergeUsingBase: self textC
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
    "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
   858
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   859
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   860
doMergeCurrentUsingA
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
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   863
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   864
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   865
        self mergeData mergeUsingA: self textA interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   866
    ]
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
    "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
   869
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   870
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   871
doMergeCurrentUsingB
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
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   874
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   875
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   876
        self mergeData mergeUsingB: self textB interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   877
    ]
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
    "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
   880
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   881
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   882
doMergeCurrentUsingBase
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
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   885
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   886
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   887
        self mergeData mergeUsingBase: self textC interval: interval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   888
    ]
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
    "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
   891
! !
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
!TextDiff3Tool methodsFor:'testing'!
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
isDiff3
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   896
    ^true
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
    "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
   899
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   900
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   901
isMerge
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
    ^self mergeHolder value
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
    "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
   906
! !
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
!TextDiff3Tool::MergeService class methodsFor:'accessing'!
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
label
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   911
    "Answers short label - for UI"
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
    ^'Merge Support Service'
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
    "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
   916
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   917
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   918
!TextDiff3Tool::MergeService class methodsFor:'queries'!
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
isUsefulFor:aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   921
    "this filters useful services.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   922
     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
   923
     for itself - not for subclasses"
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
    ^ self == Tools::TextDiff3Tool::MergeService
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
    "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
   928
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   929
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   930
!TextDiff3Tool::MergeService class methodsFor:'testing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   931
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   932
isAvailable
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
    ^false "/Should be installed explicitly"
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
    "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
   937
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   938
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   939
!TextDiff3Tool::MergeService methodsFor:'accessing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   940
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   941
infoAtLine: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   942
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   943
    data isNil ifTrue:[ ^ nil ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   944
    ^(lineNr between: 1 and: data listInfos size) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   945
        data listInfos at: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   946
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   947
        nil
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   950
    "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
   951
    "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
   952
!
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
sectionInterval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   955
    ^ sectionIntervalHolder value
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   956
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   957
    "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
   958
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   959
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   960
sectionInterval: anObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   961
    ^ self sectionIntervalHolder value: anObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   962
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   963
    "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
   964
    "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
   965
! !
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
!TextDiff3Tool::MergeService methodsFor:'aspects'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   968
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   969
dataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   970
    "return/create the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   971
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   972
    dataHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   973
        dataHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   974
        dataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   975
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   976
    ^ dataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   977
!
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:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   980
    "set the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   981
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   982
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   983
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
        oldValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   986
        dataHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   987
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   988
    dataHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   989
    dataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   990
        dataHolder addDependent:self.
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
    newValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   993
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   994
        self update:#value with:newValue from:dataHolder.
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
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   997
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   998
sectionIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   999
    "return/create the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1000
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1001
    sectionIntervalHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1002
        sectionIntervalHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1003
        sectionIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1004
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1005
    ^ sectionIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1006
!
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:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1009
    "set the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1010
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1011
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1012
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
        oldValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1015
        sectionIntervalHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1016
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1017
    sectionIntervalHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1018
    sectionIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1019
        sectionIntervalHolder addDependent:self.
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
    newValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1022
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1023
        self update:#value with:newValue from:sectionIntervalHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1024
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1025
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1026
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1027
!TextDiff3Tool::MergeService methodsFor:'change & update'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1028
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1029
dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1030
    "Merge data has changes, update text view"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1031
    | changed |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1032
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1033
    textView isNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1034
        ^ self  "/not yet registered
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
    data isNil ifTrue:[
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1037
        textView list: StringCollection new.
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1038
        ^self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1039
    ].
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
    "/Collect conflicted lines"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1042
    changed := data listInfos 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1043
                select:[:info|info isConflict]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1044
                thenCollect:[:info|info line].
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1045
    [ 
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1046
        ignoreLinesModifiedFromTo := true.    
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1047
        textView changedLines: changed.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1048
        textView diffMode: true.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1049
        textView list: data list.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1050
    ] ensure:[ 
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1051
        ignoreLinesModifiedFromTo := false.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1052
    ].
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1053
    textView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1054
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1055
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1056
    "Created: / 19-03-2012 / 12:41:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1057
    "Modified: / 16-11-2015 / 13:16:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13794
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1060
dataHolderChanged
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
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1063
        data removeDependent: self.
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
    data := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1066
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1067
        data addDependent: self.
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
    self sectionInterval: nil.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1070
    self dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1071
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1072
    "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
  1073
    "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
  1074
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1075
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1076
update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1077
    "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
  1078
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1079
    "stub code automatically generated - please change as required"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1080
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1081
    changedObject == dataHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1082
         self dataHolderChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1083
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1084
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1085
    changedObject == data ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1086
         self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1087
         ^ self.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1090
    changedObject == sectionIntervalHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1091
        gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1092
        ^self
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1093
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1094
    super update:something with:aParameter from:changedObject
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
    "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
  1097
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1098
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1099
updateSelection: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1100
    "For given number, update sectionInterval"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1101
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1102
    | conflict |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1103
    lineNr notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1104
        conflict := (self infoAtLine: lineNr) conflict.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1105
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1106
    lineNr isNil"conflict isNil" ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1107
        self sectionInterval: nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1108
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1109
        | start stop i |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1110
        i := lineNr - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1111
        [ i > 0 and:[ (self infoAtLine: i) conflict == conflict ]] 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1112
            whileTrue:[ i := i - 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1113
        start := i + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1114
        i := lineNr + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1115
        [ 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
  1116
            whileTrue:[ i := i + 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1117
        stop := i - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1118
        self sectionInterval: (start to: stop).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1119
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1120
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1121
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1122
    "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
  1123
    "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
  1124
! !
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
!TextDiff3Tool::MergeService methodsFor:'drawing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1127
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1128
drawLine:lineNo in:view atX:x y:yBaseline width:w height:hFont ascent:aFont
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1129
    from:startCol to:endColOrNil with:fg and:bg 
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1130
    "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
  1131
     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
  1132
     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
  1133
     them, now it is just an experiment...)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1134
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1135
    | info color sectionInterval |
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
    sectionInterval := self sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1138
    view == gutterView ifFalse:[ ^ self ].
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1139
    
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1140
    info := self infoAtLine: lineNo.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1141
    info notNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1142
        color := info color.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1143
        color notNil ifTrue:[
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1144
            view fillRectangleX:x y:yBaseline - hFont 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1145
                 width:8 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1146
                 height:hFont + textView lineSpacing + 5"Magic constant to make it look nicer"
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1147
                 color:color.
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1148
        ].
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
    (sectionInterval notNil and:[sectionInterval includes: lineNo]) ifTrue:[
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1152
        "Drawing outside annotation area is not nice, but..."
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1153
        view fillRectangleX:view width - 7 y:yBaseline - hFont 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1154
             width:4 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1155
             height:hFont + textView lineSpacing + 5"Magic constant to make it look nicer"
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1156
             color:(Color gray).
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1157
    ]
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
    "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
  1160
    "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
  1161
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1162
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1163
!TextDiff3Tool::MergeService methodsFor:'event handling'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1164
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1165
buttonPress: button x:x y:y in: view
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
    "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
  1168
     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
  1169
     by the view."
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
    |lineNr|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1172
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1173
    view == gutterView ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1174
    button == 1 ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1175
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1176
    self updateSelection: (textView yVisibleToLineNr:y).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1177
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
    ^false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1180
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1181
    "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
  1182
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1183
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1184
linesModifiedFrom: start to: end
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1185
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1186
    ignoreLinesModifiedFromTo ifTrue:[ ^ self ].
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1187
    start to: end do:[:i|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1188
        (data listInfos at:i) resolution: #Merged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1189
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1190
    gutterView invalidate.
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
    "Created: / 06-07-2011 / 17:14:36 / jv"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1193
    "Created: / 20-03-2012 / 22:57:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1194
    "Modified: / 16-11-2015 / 12:36:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1195
! !
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1196
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1197
!TextDiff3Tool::MergeService methodsFor:'initialization'!
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1198
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1199
initialize
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1200
    "Invoked when a new instance is created."
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1201
    super initialize.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1202
    ignoreLinesModifiedFromTo := false.
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1203
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15724
diff changeset
  1204
    "Created: / 16-11-2015 / 12:36:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13794
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1207
!TextDiff3Tool::MergeService methodsFor:'registering'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1208
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1209
registerIn: aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1210
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1211
    "Installs myself in aCodeView"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1212
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1213
    super registerIn: aCodeView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1214
    self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1215
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1216
    "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
  1217
    "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
  1218
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1219
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1220
!TextDiff3Tool class methodsFor:'documentation'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1221
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1222
version
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1223
    ^ '$Header$'
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1224
!
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1225
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1226
version_CVS
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1227
    ^ '$Header$'
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1228
!
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1229
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1230
version_HG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1231
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1232
    ^ '$Changeset: <not expanded> $'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1233
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1234
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1235
version_SVN
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1236
    ^ '$Id$'
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1237
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1238