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