Tools__TextDiff3Tool.st
author Claus Gittinger <cg@exept.de>
Mon, 20 Jan 2020 21:02:47 +0100
changeset 19422 c6ca1c3e0fd7
parent 19064 477a52b53777
permissions -rw-r--r--
#REFACTORING by exept class: MultiViewToolApplication added: #askForFile:default:forSave:thenDo: changed: #askForFile:default:thenDo: #askForFile:thenDo: #menuSaveAllAs #menuSaveAs
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
18768
cd6d15fb40b4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16603
diff changeset
     1
"{ Encoding: utf8 }"
cd6d15fb40b4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16603
diff changeset
     2
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
 COPYRIGHT (c) 2006 by eXept Software AG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
              All Rights Reserved
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
 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
     8
 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
     9
 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
    10
 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
    11
 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
    12
 hereby transferred.
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
"{ Package: 'stx:libtool' }"
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
"{ NameSpace: Tools }"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
TextDiffTool subclass:#TextDiff3Tool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	instanceVariableNames:'labelMergedHolder textMergedHolder mergeHolder mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
		mergeIntervalHolder mergeView mergeService'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
	classVariableNames:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
	poolDictionaries:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
	category:'Interface-Diff'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
CodeViewService subclass:#MergeService
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	instanceVariableNames:'dataHolder data sectionIntervalHolder'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
	classVariableNames:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
	poolDictionaries:''
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
	privateIn:TextDiff3Tool
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!
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
!TextDiff3Tool class methodsFor:'documentation'!
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
 COPYRIGHT (c) 2006 by eXept Software AG
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
              All Rights Reserved
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
 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
    41
 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
    42
 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
    43
 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
    44
 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
    45
 hereby transferred.
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
!
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
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
    documentation to be added.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    [author:]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
        Jan Vrany <jan.vrany@fit.cvut.cz>
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
    [instance 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
    [class variables:]
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
    [see also:]
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
!
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
examples
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
  Starting the application:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
                                                                [exBegin]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    Tools::TextDiff3Tool open
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
                                                                [exEnd]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
  more examples to be added:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
                                                                [exBegin]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    ... add code fragment for 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    ... executable example here ...
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
                                                                [exEnd]
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
! !
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
!TextDiff3Tool class methodsFor:'defaults - colors'!
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
colorA
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
    ^(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
    86
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
    "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
    88
!
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
colorB
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
    ^(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
    93
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    "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
    95
!
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
colorBase
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
    ^(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
   100
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
    "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
   102
!
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
colorConflict
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
    ^Color red
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
    "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
   109
!
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
colorMerged
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
    ^(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
   114
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
    "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
   116
! !
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
!TextDiff3Tool class methodsFor:'interface specs'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
    "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
   125
     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
   126
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
     Tools::TextDiff3Tool new openInterface:#diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    "
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
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
        name: diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
          label: 'Text Diff Tool (for embedding)'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
          name: 'Text Diff Tool (for embedding)'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
          bounds: (Rectangle 0 0 782 506)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
           (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
              name: '3Labels'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
              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
   150
              component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
             (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
                collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
                    name: 'VersionC'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
                    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
   156
                    minorKey: versionCLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
                    name: 'VersionA'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
                    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
   161
                    minorKey: versionALabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
                 (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
                    name: 'VersionB'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
                    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
   166
                    minorKey: versionBLabelSpec
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
              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
           (ArbitraryComponentSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
              name: 'Diff3TextView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
              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
   175
              hasHorizontalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
              hasVerticalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
              autoHideScrollBars: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
              hasBorder: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
              component: diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
              postBuildCallback: postBuildDiffView:
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
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
    "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
   193
     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
   194
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
     Tools::TextDiff3Tool new openInterface:#mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
    "
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
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
        name: mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
          label: 'Merge view'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
          name: 'Merge view'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
          bounds: (Rectangle 0 0 782 506)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
           (VariableVerticalPanelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
              name: 'DiffAndMergePanel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
              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
   218
              component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
             (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
                collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
                 (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
                    name: 'Box1'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
                    component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
                   (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
                      collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
                       (ViewSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
                          name: '3Labels'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
                          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
   229
                          component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
                         (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
                            collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
                                name: 'VersionC'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
                                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
   235
                                minorKey: versionCLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
                              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
                                name: 'VersionA'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
                                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
   240
                                minorKey: versionALabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
                              )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
                             (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
                                name: 'VersionB'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
                                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
   245
                                minorKey: versionBLabelSpec
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
                          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
                       (ArbitraryComponentSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
                          name: 'Diff3TextView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
                          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
   254
                          hasHorizontalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
                          hasVerticalScrollBar: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
                          autoHideScrollBars: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
                          hasBorder: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
                          component: diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
                          postBuildCallback: postBuildDiffView:
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
                    )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
                  )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
                 (TransparentBoxSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
                    name: 'MergeView'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
                    component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
                   (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
                      collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
                       (UISubSpecification
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
                          name: 'MergeLabel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
                          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
   273
                          minorKey: versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
                        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
                       (TextEditorSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
                          name: 'MergeCode'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
                          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
   278
                          model: textMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
                          hasHorizontalScrollBar: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
                          hasVerticalScrollBar: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
                          hasKeyboardFocusInitially: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
                          viewClassName: 'Tools::CodeView2'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
                          postBuildCallback: postBuildMergeView:
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
               
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
              handles: (Any 0.5 1.0)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
           (MenuPanelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
              name: 'ToolBar'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
              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
   297
              menu: toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
              textDefault: true
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
      )
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
    "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
   306
! !
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
!TextDiff3Tool class methodsFor:'interface specs - labels'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
    "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
   315
     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
   316
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   318
     UIPainter new openOnClass:Tools::TextDiff3Tool andSelector:#versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   319
     Tools::TextDiff3Tool new openInterface:#versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
    "
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
    <resource: #canvas>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   323
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   324
    ^ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   325
     #(FullSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   326
        name: versionMergedLabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   327
        window: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   328
       (WindowSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   329
          label: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   330
          name: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   331
          min: (Point 10 10)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   332
          bounds: (Rectangle 0 0 774 30)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   333
        )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   334
        component: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   335
       (SpecCollection
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   336
          collection: (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
           (LabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
              label: 'versionMerged24x24'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
              name: 'VersionMergedIcon'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
              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
   341
              hasCharacterOrientedLabel: false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
              translateLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
            )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
           (LabelSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
              label: 'Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
              name: 'VersionMergeLabel'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
              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
   348
              translateLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
              labelChannel: labelMergedHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
              resizeForLabel: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
              adjust: left
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
              useDynamicPreferredWidth: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
              usePreferredWidth: true
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
! !
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
!TextDiff3Tool class methodsFor:'menu specs'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
     by the MenuEditor of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
    "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
   368
     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
   369
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
    "
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
     MenuEditor new openOnClass:Tools::TextDiff3Tool andSelector:#toolbarMenuMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
     (Menu new fromLiteralArrayEncoding:(Tools::TextDiff3Tool toolbarMenuMerge)) startUp
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
    "
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
    <resource: #menu>
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
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
     #(Menu
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
        (
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   381
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   382
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   383
            label: 'Use Base for Current Delta'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   384
            itemValue: doMergeCurrentUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   385
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   386
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBase24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   387
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   388
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   389
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   390
            label: 'Use A for Current '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   391
            itemValue: doMergeCurrentUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   392
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   393
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingA24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   394
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   395
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   396
            enabled: canMergeCurrentHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   397
            label: 'Use B for Current '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   398
            itemValue: doMergeCurrentUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   400
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingB24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   401
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   402
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   403
            label: 'Use Base Everywhere'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   404
            itemValue: doMergeAllUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   405
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   406
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   407
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBaseAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   408
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   409
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   410
            label: 'Use A Everywhere'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   411
            itemValue: doMergeAllUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   412
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   413
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   414
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingAAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   415
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   416
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   417
            label: 'Use Be Everywhere '
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   418
            itemValue: doMergeAllUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   419
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   420
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeUsingBAll24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   421
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   422
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   423
            label: 'Auto Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   424
            itemValue: doMergeAllAuto
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   425
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   426
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   427
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeMerge24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   428
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   429
         (MenuItem
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   430
            label: 'External Merge'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   431
            itemValue: doMergeAllExternal
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   432
            isButton: true
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   433
            startGroup: right
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   434
            labelImage: (ResourceRetriever ToolbarIconLibrary mergeMergeExternal24x24)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   435
          )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   436
         )
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   437
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   438
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   439
      )
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
    "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
   442
! !
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
!TextDiff3Tool class methodsFor:'plugIn spec'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   445
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   446
aspectSelectors
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   447
    "This resource specification was automatically generated
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   448
     by the UIPainter of ST/X."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   449
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   450
    "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
   451
     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
   452
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   453
    "Return a description of exported aspects;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   454
     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
   455
     (if this app is embedded in a subCanvas)."
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
    ^ #(
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   458
        #codeAspectHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   459
        #labelAHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   460
        #labelBHolde
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   461
        #labelCHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   462
        #labelHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   463
        #languageHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   464
        #mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   465
        #mergeHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   466
        #textAHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   467
        #textBHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   468
        #textCHolder
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
! !
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
!TextDiff3Tool methodsFor:'accessing'!
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
beDiff3Tool
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
    self mergeHolder value: false
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
    "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
   480
!
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
beMergeTool
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
    self mergeHolder value: true
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
    "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
   487
!
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
mergeData
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
    ^self mergeDataHolder value
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
    "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
   494
! !
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
!TextDiff3Tool methodsFor:'aspects'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   498
contentSpecHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
    "return/create the 'contentSpecHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
    contentSpecHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   502
        contentSpecHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   503
        self mergeHolder value 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   504
            ifTrue:[contentSpecHolder setValue: #mergeSpec]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
            ifFalse:[contentSpecHolder setValue: #diff3Spec].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
        contentSpecHolder addDependent:self.
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
    ^ contentSpecHolder
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
    "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
   511
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
diffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
    diffView notNil  ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
        self breakPoint: #jv.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
    diffView := self initializeDiffView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518
    ^diffView
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
    "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
   521
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
    "return/create the 'mergeDataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
    mergeDataHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   527
        mergeDataHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   528
        mergeDataHolder addDependent:self.
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
    ^ mergeDataHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   531
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   532
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   533
mergeDataHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   534
    "set the 'mergeDataHolder' value holder (automatically generated)"
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
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   537
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   538
    mergeDataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   539
        oldValue := mergeDataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   540
        mergeDataHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   541
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   542
    mergeDataHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   543
    mergeDataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   544
        mergeDataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   545
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   546
    newValue := mergeDataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   547
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   548
        self update:#value with:newValue from:mergeDataHolder.
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
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
mergeHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   553
    "return/create the 'mergeHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
    mergeHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   556
        mergeHolder := ValueHolder with: false.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   557
        mergeHolder addDependent:self.
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
    ^ mergeHolder
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
    "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
   562
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   563
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   564
mergeHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   565
    "set the 'mergeHolder' value holder (automatically generated)"
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
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   568
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   569
    mergeHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   570
        oldValue := mergeHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   571
        mergeHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   572
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
    mergeHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   574
    mergeHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   575
        mergeHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   576
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   577
    newValue := mergeHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   578
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
        self update:#value with:newValue from:mergeHolder.
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
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   582
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   583
mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   584
    "return/create the 'mergeIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   585
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   586
    mergeIntervalHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   587
        mergeIntervalHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   588
        mergeIntervalHolder addDependent:self.
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
    ^ mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   591
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   592
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   593
mergeIntervalHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   594
    "set the 'mergeIntervalHolder' value holder (automatically generated)"
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
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   597
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   598
    mergeIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   599
        oldValue := mergeIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   600
        mergeIntervalHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   601
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   602
    mergeIntervalHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   603
    mergeIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   604
        mergeIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   605
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   606
    newValue := mergeIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   607
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   608
        self update:#value with:newValue from:mergeIntervalHolder.
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
! !
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
!TextDiff3Tool methodsFor:'aspects - queries'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
canMergeCurrentHolder
18768
cd6d15fb40b4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16603
diff changeset
   615
    ^ self builder bindings at:#canMergeCurrentHolder ifAbsentPut:[
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   616
        BlockValue
18768
cd6d15fb40b4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16603
diff changeset
   617
            with:[:model| model notNil]
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   618
            argument: self mergeIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
    ]
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
    "Created: / 30-11-2012 / 13:49:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
18768
cd6d15fb40b4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16603
diff changeset
   622
    "Modified: / 17-05-2019 / 16:07:41 / Stefan Vogel"
13794
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   625
!TextDiff3Tool methodsFor:'aspects-versions'!
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   628
    "return/create the 'labelMergedHolder' value holder (automatically generated)"
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 isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
        labelMergedHolder := ValueHolder with:'Merge'.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   633
    ^ labelMergedHolder
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
    "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
   636
!
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
    "set the 'labelMergedHolder' value holder (automatically generated)"
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
    labelMergedHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
!
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
    "return/create the 'textMergedHolder' value holder (automatically generated)"
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 isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   648
        textMergedHolder := ValueHolder new.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   651
!
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
    "set the 'textMergedHolder' value holder (automatically generated)"
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
    textMergedHolder := something.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   659
!TextDiff3Tool methodsFor:'change & update'!
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
update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   662
    "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
   663
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   664
    "stub code automatically generated - please change as required"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   665
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   666
    changedObject == mergeHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   667
        self updateViews.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   668
        self updateMergeData.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   669
        self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   670
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   671
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
    super update:something with:aParameter from:changedObject
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
    "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
   675
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   676
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   677
updateAfterAorBorCChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   678
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   679
    (textAChanged & textBChanged & textCChanged) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   680
        textAChanged := textBChanged := textCChanged := false.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   681
        self updateViews.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   682
        self isMerge ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   683
            self updateMergeData.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   684
        ].
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
    "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
   688
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   689
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   690
updateCodeViewSynchronization
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   691
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   692
    diffView isNil ifTrue:[ ^ self ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   693
    mergeView isNil ifTrue:[ ^ self ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   694
    self isMerge ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   695
"/        diffView synchronizeWith: mergeView. 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   696
        diffView textViews do:[:e|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   697
            mergeView synchronizeWith: e.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   698
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   699
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   700
"/        diffView unsynchronizeWith: mergeView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   701
        diffView textViews do:[:e|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   702
            mergeView unsynchronizeWith: e.
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
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
    "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
   708
!
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
updateMergeData
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   711
    | data |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   712
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   713
    (data := self mergeDataHolder value) isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   714
        data := TextMergeInfo new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   715
        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
   716
        self mergeDataHolder value: data.
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
    "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
   720
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   721
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   722
updateViews
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   723
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   724
    self mergeHolder value ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   725
        self contentSpecHolder value: #mergeSpec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   726
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   727
        self contentSpecHolder value: #diff3Spec
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   728
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   729
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   730
    diffView notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   731
        diffView
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   732
            text1: self textC
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   733
            text2: self textA
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   734
            text3: self textB.
13794
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
    "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
   738
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   739
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   740
!TextDiff3Tool methodsFor:'hooks'!
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
commonPostBuild
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   743
    self updateViews
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
    "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
   746
!
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
postBuildDiffView:aScrollableView
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   749
    |textA textB textC|
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   750
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   751
    super postBuildDiffView:aScrollableView.
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   752
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   753
    diffView := aScrollableView scrolledView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   754
    diffView notNil ifTrue:[
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   755
        textA := self textA.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   756
        textB := self textB.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   757
        textC := self textC.
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   758
        (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
   759
            diffView scrolledView
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   760
                text1: textC
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   761
                text2: textA
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
   762
                text3: textB
13794
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
        self updateCodeViewSynchronization.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   766
    ].
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
    "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
   769
    "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
   770
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   772
postBuildMergeView:aCodeView2
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   773
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   774
    mergeView := aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   775
    self setupCodeView: aCodeView2.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   776
    mergeView registerService: 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   777
                ((mergeService := MergeService new)
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   778
                    dataHolder: self mergeDataHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   779
                    sectionIntervalHolder: self mergeIntervalHolder;
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   780
                    yourself).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   781
    self updateCodeViewSynchronization.
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
    "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
   784
    "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
   785
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   786
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   787
!TextDiff3Tool methodsFor:'initialization'!
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
initializeDiffView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   790
    "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
   791
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   792
    ^ Tools::Diff3CodeView2 new
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
    "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
   795
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   796
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   797
!TextDiff3Tool methodsFor:'menu actions'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   798
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   799
doMergeAllAuto
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   800
    self mergeDataHolder value 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   801
        text1:self textC
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   802
        text2:self textA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   803
        text3:self textB.
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
    "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
   806
!
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
doMergeAllExternal
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   809
    | left wc right merge |
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
    left := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   812
    left writingFileDo:[:s|s nextPutAll: self textC ? ''].
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
    wc := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   815
    wc writingFileDo:[:s|s nextPutAll: self textA ? ''].
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
    right := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   818
    right writingFileDo:[:s|s nextPutAll: self textB ? ''].
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
    merge := Filename newTemporary.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   821
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   822
    [
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   823
        (OperatingSystem executeCommand:
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   824
                ('%1 %2 %3 %4 -o %5'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   825
                    bindWith: 'kdiff3'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   826
                        with: left pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   827
                        with: wc pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   828
                        with: right pathName
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   829
                        with: merge pathName)) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   830
            merge exists ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   831
                self mergeData mergeUsing: merge contents asString
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   832
            ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   833
        ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   834
    ] ensure:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   835
        left remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   836
        wc remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   837
        right remove.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   838
        merge exists ifTrue:[merge remove].
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
    "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
   842
!
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
doMergeAllUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   845
    self mergeData mergeUsingA: self textA
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
    "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
   848
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   849
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   850
doMergeAllUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   851
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   852
    self mergeData mergeUsingB: self textB
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
    "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
   855
!
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
doMergeAllUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   858
    self mergeData mergeUsingBase: self textC
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
    "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
   861
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   862
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   863
doMergeCurrentUsingA
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   864
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   865
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   866
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   867
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   868
        self mergeData mergeUsingA: self textA interval: interval
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
    "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
   872
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   873
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   874
doMergeCurrentUsingB
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   875
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   876
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   877
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   878
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   879
        self mergeData mergeUsingB: self textB interval: interval
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
    "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
   883
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   884
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   885
doMergeCurrentUsingBase
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   886
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   887
    | interval |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   888
    interval := mergeService sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   889
    interval notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   890
        self mergeData mergeUsingBase: self textC interval: interval
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
    "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
   894
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   895
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   896
!TextDiff3Tool methodsFor:'testing'!
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
isDiff3
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   899
    ^true
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
    "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
   902
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   903
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   904
isMerge
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   905
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   906
    ^self mergeHolder value
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
    "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
   909
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   910
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   911
!TextDiff3Tool::MergeService class methodsFor:'accessing'!
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
label
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   914
    "Answers short label - for UI"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   915
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   916
    ^'Merge Support Service'
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
    "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
   919
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   920
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   921
!TextDiff3Tool::MergeService class methodsFor:'queries'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   922
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   923
isUsefulFor:aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   924
    "this filters useful services.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   925
     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
   926
     for itself - not for subclasses"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   927
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   928
    ^ self == Tools::TextDiff3Tool::MergeService
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
    "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
   931
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   932
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   933
!TextDiff3Tool::MergeService class methodsFor:'testing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   934
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   935
isAvailable
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   936
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   937
    ^false "/Should be installed explicitly"
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
    "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
   940
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   941
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   942
!TextDiff3Tool::MergeService methodsFor:'accessing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   943
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   944
infoAtLine: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   945
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   946
    data isNil ifTrue:[ ^ nil ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   947
    ^(lineNr between: 1 and: data listInfos size) ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   948
        data listInfos at: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   949
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   950
        nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   951
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   952
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   953
    "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
   954
    "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
   955
!
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
sectionInterval
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   958
    ^ sectionIntervalHolder value
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
    "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
   961
!
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
sectionInterval: anObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   964
    ^ self sectionIntervalHolder value: anObject
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
    "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
   967
    "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
   968
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   969
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   970
!TextDiff3Tool::MergeService methodsFor:'aspects'!
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   973
    "return/create the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   974
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   975
    dataHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   976
        dataHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   977
        dataHolder addDependent:self.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   980
!
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
dataHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   983
    "set the 'dataHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   984
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   985
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   986
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   987
    dataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   988
        oldValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   989
        dataHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   990
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   991
    dataHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   992
    dataHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   993
        dataHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   994
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   995
    newValue := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   996
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   997
        self update:#value with:newValue from:dataHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   998
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   999
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1000
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1001
sectionIntervalHolder
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1002
    "return/create the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1003
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1004
    sectionIntervalHolder isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1005
        sectionIntervalHolder := ValueHolder new.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1006
        sectionIntervalHolder addDependent:self.
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
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1009
!
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
sectionIntervalHolder:something
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1012
    "set the 'sectionIntervalHolder' value holder (automatically generated)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1013
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1014
    |oldValue newValue|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1015
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1016
    sectionIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1017
        oldValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1018
        sectionIntervalHolder removeDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1019
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1020
    sectionIntervalHolder := something.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1021
    sectionIntervalHolder notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1022
        sectionIntervalHolder addDependent:self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1023
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1024
    newValue := sectionIntervalHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1025
    oldValue ~~ newValue ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1026
        self update:#value with:newValue from:sectionIntervalHolder.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1027
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1028
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1029
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1030
!TextDiff3Tool::MergeService methodsFor:'change & update'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1031
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1032
dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1033
    "Merge data has changes, update text view"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1034
    | changed |
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
    textView isNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1037
        ^ self  "/not yet registered
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1038
    ]. 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1039
    data isNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1040
        textView list: #().
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1041
        ^self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1042
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1043
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1044
    "/Collect conflicted lines"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1045
    changed := data listInfos 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1046
                select:[:info|info isConflict]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1047
                thenCollect:[:info|info line].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1048
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1049
    textView changedLines: changed.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1050
    textView diffMode: true.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1051
    textView list: data list.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1052
    textView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1053
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1054
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1055
    "Created: / 19-03-2012 / 12:41:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1056
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1057
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1058
dataHolderChanged
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
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1061
        data removeDependent: self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1062
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1063
    data := dataHolder value.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1064
    data notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1065
        data addDependent: self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1066
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1067
    self sectionInterval: nil.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1068
    self dataChanged
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1069
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1070
    "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
  1071
    "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
  1072
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1073
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1074
update:something with:aParameter from:changedObject
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1075
    "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
  1076
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1077
    "stub code automatically generated - please change as required"
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
    changedObject == dataHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1080
         self dataHolderChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1081
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1082
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1083
    changedObject == data ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1084
         self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1085
         ^ self.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1086
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1087
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1088
    changedObject == sectionIntervalHolder ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1089
        gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1090
        ^self
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1091
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1092
    super update:something with:aParameter from:changedObject
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
    "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
  1095
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1096
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1097
updateSelection: lineNr
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1098
    "For given number, update sectionInterval"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1099
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1100
    | conflict |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1101
    lineNr notNil ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1102
        conflict := (self infoAtLine: lineNr) conflict.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1103
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1104
    lineNr isNil"conflict isNil" ifTrue:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1105
        self sectionInterval: nil
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1106
    ] ifFalse:[
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1107
        | start stop i |
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1108
        i := lineNr - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1109
        [ i > 0 and:[ (self infoAtLine: i) conflict == conflict ]] 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1110
            whileTrue:[ i := i - 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1111
        start := i + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1112
        i := lineNr + 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1113
        [ 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
  1114
            whileTrue:[ i := i + 1 ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1115
        stop := i - 1.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1116
        self sectionInterval: (start to: stop).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1117
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1118
    gutterView invalidate.
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
    "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
  1121
    "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
  1122
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1123
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1124
!TextDiff3Tool::MergeService methodsFor:'drawing'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1125
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1126
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
  1127
    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
  1128
    "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
  1129
     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
  1130
     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
  1131
     them, now it is just an experiment...)"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1132
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1133
    | info color sectionInterval |
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
    sectionInterval := self sectionInterval.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1136
    view == gutterView ifFalse:[ ^ self ].
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1137
    
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1138
    info := self infoAtLine: lineNo.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1139
    info notNil ifTrue:[ 
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1140
        color := info color.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1141
        color notNil ifTrue:[
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1142
            view fillRectangleX:x y:yBaseline - hFont 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1143
                 width:8 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1144
                 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
  1145
                 color:color.
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1146
        ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1147
    ].
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
    (sectionInterval notNil and:[sectionInterval includes: lineNo]) ifTrue:[
16603
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1150
        "Drawing outside annotation area is not nice, but..."
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1151
        view fillRectangleX:view width - 7 y:yBaseline - hFont 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1152
             width:4 
5bfc8ece7e14 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 15722
diff changeset
  1153
             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
  1154
             color:(Color gray).
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1155
    ]
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1156
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1157
    "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
  1158
    "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
  1159
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1160
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1161
!TextDiff3Tool::MergeService methodsFor:'event handling'!
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
buttonPress: button x:x y:y in: view
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1164
    "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
  1165
     If the method returns true, it has eaten the event and it will not be processed
19064
477a52b53777 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 18768
diff changeset
  1166
     by the view or other services.
477a52b53777 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 18768
diff changeset
  1167
     Notice, that this is called both for events in the gutter AND for events in the text."
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1168
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1169
    view == gutterView ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1170
    button == 1 ifFalse:[ ^ false ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1171
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1172
    self updateSelection: (textView yVisibleToLineNr:y).
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1173
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1174
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1175
    ^false
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1176
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1177
    "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
  1178
!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1179
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1180
linesModifiedFrom: start to: end
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1181
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1182
    start to: end do:[:i|
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1183
        (data listInfos at:i) resolution: #Merged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1184
    ].
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1185
    gutterView invalidate.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1186
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1187
    "Created: / 06-07-2011 / 17:14:36 / jv"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1188
    "Created: / 20-03-2012 / 22:57:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1189
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1190
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1191
!TextDiff3Tool::MergeService methodsFor:'registering'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1192
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1193
registerIn: aCodeView
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1194
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1195
    "Installs myself in aCodeView"
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1196
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1197
    super registerIn: aCodeView.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1198
    self dataChanged.
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1199
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1200
    "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
  1201
    "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
  1202
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1203
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1204
!TextDiff3Tool class methodsFor:'documentation'!
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1205
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1206
version
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1207
    ^ '$Header$'
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1208
!
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1209
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1210
version_CVS
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1211
    ^ '$Header$'
14039
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1212
!
82567b14e97b Refactoring of NavigatorModel's environment.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13794
diff changeset
  1213
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1214
version_HG
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
    ^ '$Changeset: <not expanded> $'
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1217
!
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
version_SVN
15722
34b4f50c2083 class: Tools::TextDiff3Tool
Claus Gittinger <cg@exept.de>
parents: 14039
diff changeset
  1220
    ^ '$Id$'
13794
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1221
! !
7c2c30ca4c2e Merged in jv's version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
  1222