Tools__ChangeList.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 05 Sep 2013 12:46:11 +0200
changeset 13498 b8d845e42988
parent 12666 c90e266fc135
child 13513 97b651d76972
permissions -rw-r--r--
Added `environment` instance variable to Tools__NewSystemBrowser and components it uses. The environment is by default initialized to Smalltalk. This allow for displaying limited subset of classes in the browser. The classes displayed does not even have to be classes and does not have to be installed in Smalltalk dictionary.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
10064
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     2
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     3
              All Rights Reserved
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
10064
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     5
Permission is hereby granted, free of charge, to any person
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     6
obtaining a copy of this software and associated documentation
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     7
files (the 'Software'), to deal in the Software without
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     8
restriction, including without limitation the rights to use,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
     9
copy, modify, merge, publish, distribute, sublicense, and/or sell
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    10
copies of the Software, and to permit persons to whom the
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    11
Software is furnished to do so, subject to the following
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    12
conditions:
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    13
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    14
The above copyright notice and this permission notice shall be
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    15
included in all copies or substantial portions of the Software.
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    16
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    17
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    18
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    19
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    20
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    21
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    22
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    23
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    24
OTHER DEALINGS IN THE SOFTWARE.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
"{ Package: 'stx:libtool' }"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
"{ NameSpace: Tools }"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
    30
BrowserListWithFilter subclass:#ChangeList
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
    31
	instanceVariableNames:'listHolder showRemovedHolder showSameHolder
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
    32
		showConflictsOnlyHolder allowRemoveHolder allowAcceptHolder
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
    33
		applyAction'
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	classVariableNames:'LastSelectionConditionString'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
	poolDictionaries:''
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
	category:'Interface-Browsers-ChangeSet'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
HierarchicalItem subclass:#ListEntry
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
	instanceVariableNames:'change application x'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
	classVariableNames:''
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
	poolDictionaries:''
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
	privateIn:ChangeList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
!ChangeList class methodsFor:'documentation'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
copyright
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
"
10064
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    50
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    51
              All Rights Reserved
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    52
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    53
Permission is hereby granted, free of charge, to any person
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    54
obtaining a copy of this software and associated documentation
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    55
files (the 'Software'), to deal in the Software without
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    56
restriction, including without limitation the rights to use,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    57
copy, modify, merge, publish, distribute, sublicense, and/or sell
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    58
copies of the Software, and to permit persons to whom the
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    59
Software is furnished to do so, subject to the following
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    60
conditions:
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
10064
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    62
The above copyright notice and this permission notice shall be
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    63
included in all copies or substantial portions of the Software.
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    64
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    65
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    66
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    67
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    68
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    69
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    70
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    71
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
7949933c6a57 copyright
Claus Gittinger <cg@exept.de>
parents: 10009
diff changeset
    72
OTHER DEALINGS IN THE SOFTWARE.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
!ChangeList class methodsFor:'image specs'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
iconEqual
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
    79
    ^ ToolbarIconLibrary iconEqual12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
    81
    "Modified: / 31-08-2011 / 10:52:34 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
iconEqualGrayed
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
    85
    ^ ToolbarIconLibrary iconEqualGray12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
    87
    "Modified: / 31-08-2011 / 10:54:00 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
    90
iconExcla
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
    91
    ^ ToolbarIconLibrary iconExclaRed12x12
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
    92
!
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
    93
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
iconMinus
11657
20ecaec63deb changed:
Claus Gittinger <cg@exept.de>
parents: 11245
diff changeset
    95
    ^ ToolbarIconLibrary iconMinusRed12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
11657
20ecaec63deb changed:
Claus Gittinger <cg@exept.de>
parents: 11245
diff changeset
    97
    "Modified: / 24-07-2012 / 16:43:36 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
iconMinusGrayed
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
   101
    ^ ToolbarIconLibrary iconMinusGray12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
   103
    "Modified: / 31-08-2011 / 10:54:40 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
iconPlus
11657
20ecaec63deb changed:
Claus Gittinger <cg@exept.de>
parents: 11245
diff changeset
   107
    ^ ToolbarIconLibrary iconPlusBlue12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
11657
20ecaec63deb changed:
Claus Gittinger <cg@exept.de>
parents: 11245
diff changeset
   109
    "Modified: / 24-07-2012 / 16:43:31 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
iconPlusGrayed
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
   113
    ^ ToolbarIconLibrary iconPlusGray12x12
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
   115
    "Modified: / 31-08-2011 / 10:54:46 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
!ChangeList class methodsFor:'interface specs'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
windowSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
    "This resource specification was automatically generated
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
     by the UIPainter of ST/X."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
    "Do not manually edit this!! If it is corrupted,
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
     the UIPainter may not be able to read the specification."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    "
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
     UIPainter new openOnClass:Tools::ChangeList andSelector:#windowSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
     Tools::ChangeList new openInterface:#windowSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
     Tools::ChangeList open
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
    "
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
    <resource: #canvas>
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
    ^ 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
     #(FullSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
        name: windowSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
        window: 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
       (WindowSpec
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
          label: 'Change List'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
          name: 'Change List'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
          min: (Point 10 10)
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
          bounds: (Rectangle 0 0 300 300)
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
        )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
        component: 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
       (SpecCollection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
          collection: (
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
           (SelectionInListModelViewSpec
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   149
              name: 'List'
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
              model: selectionHolder
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   152
              menu: menuHolderWithShowFilter
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
              hasHorizontalScrollBar: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
              hasVerticalScrollBar: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
              listModel: listHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
              multipleSelectOk: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
              useIndex: false
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
              highlightMode: line
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
              doubleClickSelector: selectionDoubleclicked
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   160
              postBuildCallback: postBuildListView:
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   161
            )
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   162
           (InputFieldSpec
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   163
              name: 'Filter'
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   164
              layout: (LayoutFrame 0 0 0 0 0 1 26 0)
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   165
              initiallyInvisible: true
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   166
              model: filterPatternHolder
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   167
              immediateAccept: true
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   168
              acceptOnLeave: false
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   169
              acceptOnReturn: false
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   170
              acceptOnTab: false
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   171
              acceptOnPointerLeave: false
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   172
              emptyFieldReplacementText: 'Search Filter...'
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   173
              usePreferredHeight: true
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   174
              useDynamicPreferredHeight: true
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   175
              postBuildCallback: postBuildFilterView:
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
            )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
           )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
         
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
        )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
      )
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   181
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   182
    "Modified: / 29-11-2011 / 15:52:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
!ChangeList class methodsFor:'menu specs'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
listMenu
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    "This resource specification was automatically generated
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
     by the MenuEditor of ST/X."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
    "Do not manually edit this!! If it is corrupted,
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
     the MenuEditor may not be able to read the specification."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   194
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    "
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
     MenuEditor new openOnClass:Tools::ChangeList andSelector:#listMenu
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
     (Menu new fromLiteralArrayEncoding:(Tools::ChangeList listMenu)) startUp
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
    "
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    <resource: #menu>
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
    ^ 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
     #(Menu
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
        (
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
            enabled: hasChangeSelectedAndNotRemoved
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
            label: 'Apply'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
            itemValue: listMenuApply
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
            translateLabel: true
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   210
            isVisible: allowAcceptHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
            shortcutKey: Accept
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
            label: 'Apply all'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
            itemValue: listMenuApplyAll
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
            translateLabel: true
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   217
            isVisible: allowAcceptHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
            enabled: hasSingleChangeSelectedAndCanBrowse
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
            label: 'Browse'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
            itemValue: listMenuBrowse
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
            translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
            label: '-'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
            label: 'Delete'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
            itemValue: listMenuDeleteSelection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
            nameKey: Delete
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
            translateLabel: true
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   233
            isVisible: allowRemoveHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
            shortcutKey: Delete
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
            label: '-'
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   238
            isVisible: allowRemoveHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
            label: 'Select...'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
            translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
            submenu: 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
           (Menu
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
              (
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
                  label: 'Select same'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
                  itemValue: listMenuSelectSame
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
               (MenuItem
12577
3ca47412263f class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12108
diff changeset
   252
                  label: 'Select conflicts (redefined classes/methods)'
3ca47412263f class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12108
diff changeset
   253
                  itemValue: listMenuSelectConflicts
3ca47412263f class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12108
diff changeset
   254
                  translateLabel: true
3ca47412263f class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12108
diff changeset
   255
                )
3ca47412263f class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12108
diff changeset
   256
               (MenuItem
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
                  label: 'Select additions (new classes/methods)'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
                  itemValue: listMenuSelectAdditions
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
                  label: 'Select removals'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
                  itemValue: listMenuSelectRemovals
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
                  label: '-'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
                  label: 'Select all'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
                  itemValue: listMenuSelectAll
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
                  label: 'Select none'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
                  itemValue: listMenuSelectNone
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
                  label: '-'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
               (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
                  label: 'Select using block'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
                  itemValue: listMenuSelectUsingBlock
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
                  translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
                )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
               )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
              nil
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
              nil
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
            )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
            label: '-'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
            label: 'Show Deleted'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
            translateLabel: true
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   298
            isVisible: allowRemoveHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
            indication: showRemovedHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
         (MenuItem
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
            label: 'Inspect change'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
            itemValue: listMenuInspect
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
            translateLabel: true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
          )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
         )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
        nil
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
        nil
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
      )
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
!ChangeList class methodsFor:'plugIn spec'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
aspectSelectors
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    "This resource specification was automatically generated
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
     by the UIPainter of ST/X."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
    "Do not manually edit this. If it is corrupted,
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
     the UIPainter may not be able to read the specification."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
    "Return a description of exported aspects;
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
     these can be connected to aspects of an embedding application
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
     (if this app is embedded in a subCanvas)."
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    ^ #(
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   326
        #allowAcceptHolder
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   327
        #allowRemoveHolder
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   328
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
        #inGeneratorHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
        #menuHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
        #outGeneratorHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
        #selectionHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
        #showRemovedHolder
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   334
        #showSameHolder
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   335
        #showConflictsOnlyHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
      ).
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   338
    "Modified: / 24-01-2012 / 19:54:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
!ChangeList methodsFor:'accessing'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   343
acceptEnabled
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   344
    ^ self allowAccept
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   345
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   346
    "Created: / 08-02-2012 / 14:45:12 / cg"
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   347
!
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   348
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   349
allowAccept
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   350
    ^ self allowAcceptHolder value
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   352
    "Created: / 24-01-2012 / 19:52:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   355
allowAccept: aBoolean
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   356
    ^ self allowAcceptHolder value: aBoolean
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   358
    "Created: / 24-01-2012 / 19:52:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   359
!
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   360
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   361
allowRemoved
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   362
    ^ self allowRemoveHolder value ? true
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   363
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   364
    "Created: / 05-12-2009 / 14:28:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
11795
894f104886b8 changed: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11794
diff changeset
   367
applyAction:aBlock
894f104886b8 changed: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11794
diff changeset
   368
    applyAction := aBlock.
894f104886b8 changed: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11794
diff changeset
   369
894f104886b8 changed: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11794
diff changeset
   370
    "Modified (format): / 10-09-2012 / 14:15:30 / cg"
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   371
!
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   372
11035
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   373
list
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   374
    ^ listHolder value
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   375
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   376
    "Created: / 05-12-2009 / 14:48:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   377
    "Created: / 27-12-2011 / 14:18:25 / cg"
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   378
!
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   379
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
selection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    ^self selectionHolder value
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
    "Created: / 05-12-2009 / 14:48:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
11035
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   387
selectionIndices
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   388
    |sel|
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   389
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   390
    (sel := self selectionHolder value) isEmptyOrNil ifTrue:[^ #()].
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   391
    ^ sel collect:[:each | self list identityIndexOf:each].
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   392
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   393
    "Created: / 05-12-2009 / 14:48:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   394
    "Created: / 27-12-2011 / 10:56:20 / cg"
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   395
!
Claus Gittinger <cg@exept.de>
parents: 10957
diff changeset
   396
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
showRemoved
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
    ^self showRemovedHolder value ? true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
    "Created: / 05-12-2009 / 14:28:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
!ChangeList methodsFor:'actions'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
selectionDoubleclicked
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   408
    self listMenuBrowse
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   409
"/    | app |
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   410
"/
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   411
"/    self selection do:
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   412
"/        [:e|e removed: e removed not].
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   413
"/    ((app := self masterApplication) respondsTo: #redrawChangeListViews)
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   414
"/        ifTrue:[app redrawChangeListViews].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   416
    "Modified: / 24-01-2012 / 22:01:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
!ChangeList methodsFor:'aspects'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   421
allowAcceptHolder
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
    "return/create the valueHolder 'acceptEnabledHolder'"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   424
    allowAcceptHolder isNil ifTrue:[
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   425
        allowAcceptHolder := ValueHolder with:nil "defaultValue here".
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
    ].
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   427
    ^ allowAcceptHolder
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   428
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   429
    "Created: / 24-01-2012 / 19:53:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   430
!
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   431
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   432
allowAcceptHolder:something
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   433
    "set the 'allowAcceptHolder' value holder (automatically generated)"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   434
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   435
    allowAcceptHolder := something.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   438
allowRemoveHolder
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   439
    "return/create the 'allowRemoveHolder' value holder (automatically generated)"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   440
    
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   441
    allowRemoveHolder isNil ifTrue:[
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   442
        allowRemoveHolder := ValueHolder with:true.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   443
        allowRemoveHolder addDependent:self.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   444
    ].
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   445
    ^ allowRemoveHolder
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   446
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   447
    "Modified (comment): / 24-01-2012 / 19:44:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   448
!
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   449
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   450
allowRemoveHolder:something 
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   451
    "set the 'showRemovedHolder' value holder (automatically generated)"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   452
    
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   453
    |oldValue newValue|
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   454
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   455
    allowRemoveHolder notNil ifTrue:[
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   456
        oldValue := allowRemoveHolder value.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   457
        allowRemoveHolder removeDependent:self.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   458
    ].
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   459
    allowRemoveHolder := something.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   460
    allowRemoveHolder notNil ifTrue:[
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   461
        allowRemoveHolder addDependent:self.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   462
    ].
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   463
    newValue := allowRemoveHolder value.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   464
    oldValue ~~ newValue ifTrue:[
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   465
        self 
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   466
            update:#value
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   467
            with:newValue
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   468
            from:allowRemoveHolder.
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   469
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
listHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
    listHolder isNil ifTrue:[
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
        listHolder := ValueHolder new.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
    ].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
    ^ listHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   479
showConflictsOnlyHolder
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   480
    "return/create the 'showConflictsOnlyHolder' value holder (automatically generated)"
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   481
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   482
    showConflictsOnlyHolder isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   483
        showConflictsOnlyHolder := ValueHolder with: true.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   484
        showConflictsOnlyHolder addDependent: self.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   485
    ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   486
    ^ showConflictsOnlyHolder
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   487
!
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   488
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   489
showConflictsOnlyHolder:something
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   490
    "set the 'showConflictsOnlyHolder' value holder (automatically generated)"
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   491
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   492
    |oldValue newValue|
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   493
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   494
    showConflictsOnlyHolder notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   495
        oldValue := showConflictsOnlyHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   496
        showConflictsOnlyHolder removeDependent:self.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   497
    ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   498
    showConflictsOnlyHolder := something.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   499
    showConflictsOnlyHolder notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   500
        showConflictsOnlyHolder addDependent:self.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   501
    ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   502
    newValue := showConflictsOnlyHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   503
    oldValue ~~ newValue ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   504
        self update:#value with:newValue from:showConflictsOnlyHolder.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   505
    ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   506
!
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   507
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
showRemovedHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
    "return/create the 'showRemovedHolder' value holder (automatically generated)"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
    showRemovedHolder isNil ifTrue:[
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
        showRemovedHolder := ValueHolder with: true.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
        showRemovedHolder addDependent: self.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
    ].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
    ^ showRemovedHolder
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   518
showRemovedHolder:something
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
    "set the 'showRemovedHolder' value holder (automatically generated)"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   521
    |oldValue newValue|
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   522
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   523
    showRemovedHolder notNil ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   524
        oldValue := showRemovedHolder value.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   525
        showRemovedHolder removeDependent:self.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   526
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   527
    showRemovedHolder := something.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   528
    showRemovedHolder notNil ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   529
        showRemovedHolder addDependent:self.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   530
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   531
    newValue := showRemovedHolder value.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   532
    oldValue ~~ newValue ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   533
        self update:#value with:newValue from:showRemovedHolder.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   534
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   535
!
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   536
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   537
showSameHolder
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   538
    "return/create the 'showSameHolder' value holder (automatically generated)"
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   539
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   540
    showSameHolder isNil ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   541
        showSameHolder := ValueHolder with: true.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   542
        showSameHolder addDependent:self.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   543
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   544
    ^ showSameHolder
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   545
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   546
    "Modified: / 04-08-2011 / 18:39:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   547
!
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   548
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   549
showSameHolder:something
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   550
    "set the 'showSameHolder' value holder (automatically generated)"
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   551
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   552
    |oldValue newValue|
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   553
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   554
    showSameHolder notNil ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   555
        oldValue := showSameHolder value.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   556
        showSameHolder removeDependent:self.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   557
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   558
    showSameHolder := something.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   559
    showSameHolder notNil ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   560
        showSameHolder addDependent:self.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   561
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   562
    newValue := showSameHolder value.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   563
    oldValue ~~ newValue ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   564
        self update:#value with:newValue from:showSameHolder.
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   565
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
!ChangeList methodsFor:'change & update'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   570
selectionChanged
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   571
   super selectionChanged
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   572
!
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   573
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
update: aspect with: param from: sender
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   576
    sender == selectionHolder ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   577
        self selectionChanged.
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   578
        ^ self
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   579
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   580
    sender == showSameHolder ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   581
        self updateList
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   582
    ].
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   583
    sender == showRemovedHolder ifTrue:[
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   584
        self updateList
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   585
    ].
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   586
    sender == showConflictsOnlyHolder ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   587
        self updateList
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   588
    ].
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   589
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
    ^super update: aspect with: param from: sender
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
    "Created: / 24-10-2009 / 19:47:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11036
Claus Gittinger <cg@exept.de>
parents: 11035
diff changeset
   593
    "Modified (format): / 27-12-2011 / 14:20:30 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
!ChangeList methodsFor:'event processing'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
buttonPress:button x:x y:y view:aView
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
    | itemIndex item |
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
    button ~= 1 ifTrue:[^aView buttonPress:button x:x y:y].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
    itemIndex := aView yVisibleToLineNr:y.
10881
07359595b386 changed: #buttonPress:x:y:view:
Claus Gittinger <cg@exept.de>
parents: 10657
diff changeset
   605
    itemIndex isNil ifTrue:[^self].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
    itemIndex == 0 ifTrue:[^self].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
    itemIndex > aView list size ifTrue:[^self].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
    item := aView list at: itemIndex.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
    ((aView left + x) between: (item x) and: (item x + 16))
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
        ifFalse:[^aView buttonPress:button x:x y:y].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
    item removed: item removed not.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
    aView invalidate
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
    "Created: / 08-12-2009 / 14:12:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10881
07359595b386 changed: #buttonPress:x:y:view:
Claus Gittinger <cg@exept.de>
parents: 10657
diff changeset
   617
    "Modified: / 18-11-2011 / 14:55:41 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
handlesButtonPress:button inView:aView
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
   622
    ^listView scrolledView == aView
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
    "Created: / 08-12-2009 / 14:08:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   625
!
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   626
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   627
handlesKeyPress:key inView:aView
12108
efa871deeab7 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 11795
diff changeset
   628
    <resource: #keyboard (#Accept #Ctrls)>
efa871deeab7 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 11795
diff changeset
   629
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   630
    ^(key == #Accept or:[ key == #Ctrls]) 
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   631
        and:[ listView scrolledView == aView ]
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   632
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   633
    "Created: / 08-02-2012 / 14:43:11 / cg"
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   634
!
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   635
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   636
keyPress:key x:x y:y view:aView
12108
efa871deeab7 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 11795
diff changeset
   637
    <resource: #keyboard (#Ctrls #Accept)>
efa871deeab7 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 11795
diff changeset
   638
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   639
    (key == #Accept or:[ key == #Ctrls]) ifTrue:[
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   640
        self listMenuApply.
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   641
        ^ self
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   642
    ].
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   643
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   644
    "Created: / 08-02-2012 / 14:42:18 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
!ChangeList methodsFor:'generators'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
makeGenerator
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
    "Superclass Tools::BrowserList says that I am responsible to implement this method"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
    ^Iterator on:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
        [:whatToDo|
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   654
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
        selectionHolder value do:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
            [:changeListItem| | change |
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
            change := changeListItem change.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
            change isCompositeChange ifTrue:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
                [change changes do: whatToDo]]].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
    "Modified: / 24-07-2009 / 23:00:41 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
    "Modified: / 24-10-2009 / 20:00:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   665
!ChangeList methodsFor:'hooks'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   667
postBuildListView: aView
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   669
    super postBuildListView: aView.
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
   670
    listView scrolledView delegate: self.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   671
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   672
    "Created: / 29-11-2011 / 14:56:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   674
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
!ChangeList methodsFor:'initialization'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   676
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   677
initialize
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   678
    super initialize.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   680
    menuHolder := [self menuFor: #listMenu].
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   681
    applyAction isNil ifTrue:[
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   682
        applyAction := [:change | change apply ].
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   683
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
    "Created: / 29-10-2010 / 12:50:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   686
    "Modified: / 10-09-2012 / 13:57:20 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
!ChangeList methodsFor:'menu actions'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
listMenuApply
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   692
    |sel list idx selectionHolder|
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
    self acceptEnabled ifFalse:[^self].
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   695
    selectionHolder := self selectionHolder.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   697
    (sel := selectionHolder value) do:[:e| applyAction value:e change].
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   698
    sel size == 1 ifTrue:[
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   699
        list := self listHolder value. 
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   700
        idx := list indexOf:(sel first). 
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   701
        idx < list size ifTrue:[
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   702
            selectionHolder value:(Array with:(list at:idx+1))
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   703
        ] ifFalse:[
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   704
            selectionHolder value:#()
11245
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   705
        ].
bd76570b2cc4 accept (Ctrl-s) (implement it - not only claim it in the menu!);
Claus Gittinger <cg@exept.de>
parents: 11194
diff changeset
   706
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
    "Modified: / 24-10-2009 / 22:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   709
    "Modified: / 10-09-2012 / 13:57:46 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
listMenuApplyAll
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   713
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
    self acceptEnabled ifFalse:[^self].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
    self selection value do:
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   717
        [:e|e removed ifFalse:[applyAction value:e change]].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
    "Created: / 05-12-2009 / 14:53:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11794
3d2efe798a56 added: #applyAction:
Claus Gittinger <cg@exept.de>
parents: 11710
diff changeset
   720
    "Modified: / 10-09-2012 / 13:57:58 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   722
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   723
listMenuBrowse
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   724
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   725
    self listMenuBrowseChanges:
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   726
        ((self selectionHolder value ? #()) collect:[:e|e change])
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   727
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   728
    "Modified: / 24-01-2012 / 22:00:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   729
!
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   730
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   731
listMenuBrowseChanges: changes
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   732
    | classes methods methodsOnly browserClass|
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   733
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
    classes := Set new.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
    methods := Set new.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
    methodsOnly := true.
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   737
    changes do: [:each |
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   738
        each isClassChange ifTrue:[
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   739
            each changeClass ifNotNil:[
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   740
                classes add: each  changeClass.
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   741
                each isMethodCodeChange 
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
                    ifTrue:
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   743
                        [each changeMethod ifNotNil:
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   744
                            [methods add:each changeMethod]]
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
                    ifFalse:
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   746
                        [methodsOnly := false]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   747
            ]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   748
        ]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   749
    ].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   750
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12666
diff changeset
   751
    browserClass := environment browserClass.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   752
    methodsOnly 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   753
        ifTrue:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   754
            [methods size = 1 
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   755
                ifTrue:[ browserClass openInMethod: methods anyOne]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   756
                ifFalse:[ browserClass browseMethods: methods asArray title: 'Selected methods from changeset' sort: true]]
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   757
        ifFalse:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
            [classes size = 1
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   759
                ifTrue:[ browserClass browseClass: classes anyOne]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   760
                ifFalse:[ browserClass browseClasses: classes]]
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   761
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   762
    "Modified: / 24-10-2009 / 22:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
   763
    "Created: / 24-01-2012 / 22:00:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   766
listMenuDeleteSelection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
    self selectionHolder value do:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
        [:each|each removed: true].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   770
    self updateList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   771
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   772
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   773
listMenuInspect
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   774
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   775
    | selection |
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   776
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   777
    selection := self selectionHolder value collect:[:e|e change].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   778
    selection size = 1
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   779
        ifTrue:[selection anyOne inspect]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
        ifFalse:[selection inspect].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
    "Modified: / 24-10-2009 / 22:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   784
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   785
listMenuSelectAdditions
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   786
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   787
    self listMenuSelectAllSuchThat:[:change|change delta = #+]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   788
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
listMenuSelectAll
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
    self listMenuSelectAllSuchThat:[:change|true]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   795
listMenuSelectAllSuchThat:conditionBlock 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
    |newSelection|
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   798
    newSelection := self listHolder value 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
                select:[:entry | conditionBlock value:entry change ].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
    self selectionHolder value:newSelection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
listMenuSelectNone
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
    self listMenuSelectAllSuchThat:[:change|false]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
listMenuSelectRemovals
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   810
    self listMenuSelectAllSuchThat:[:change|change delta = #-]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   811
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   812
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   813
listMenuSelectSame
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   814
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   815
    self listMenuSelectAllSuchThat:[:change|change delta = #=]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   816
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   817
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   818
listMenuSelectUsingBlock
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   819
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   820
    |conditionBlockString conditionBlock dialog textHolder template|
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   821
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   822
    template :=
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   823
'[:change|
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   824
     "/ Define condition for selection below:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   825
     "/ change is an instance of Change
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   826
     "/ change will be selected if and only if block returns true
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   827
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   828
    
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   829
     true"/always select the change
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   830
]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   831
'.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
    LastSelectionConditionString isNil ifTrue:[
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   834
        LastSelectionConditionString := template.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   835
    ].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   836
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   837
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   838
    textHolder := ValueHolder new.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   839
    dialog := Dialog
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
                 forRequestText:(resources string:'Enter condition for selection')
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   841
                 lines:20
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   842
                 columns:70
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   843
                 initialAnswer:LastSelectionConditionString
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   844
                 model:textHolder.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   845
    dialog addButton:(Button label:'Template' action:[textHolder value:template. textHolder changed:#value.]).
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   846
    dialog open.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
    dialog accepted ifFalse:[^ self].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   849
    conditionBlockString := textHolder value.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   850
    LastSelectionConditionString := conditionBlockString.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   851
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   852
    conditionBlock := Parser evaluate:conditionBlockString.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   853
    conditionBlock isBlock ifFalse:[
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   854
        self error:'Bad selection block (syntax error?)'.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   855
        ^ self
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   856
    ].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   857
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   858
    self listMenuSelectAllSuchThat: conditionBlock
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   859
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   860
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   861
listMenuUndeleteSelection
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
    self selectionHolder value do:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
        [:each|each removed: false].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   865
    self updateList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   866
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   867
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   868
!ChangeList methodsFor:'private'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   869
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   870
application
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   871
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   872
    ^self
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   874
    "Created: / 05-12-2009 / 14:10:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   875
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
browserNameList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
    ^'Change list'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   880
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   881
    "Modified: / 24-07-2009 / 22:06:53 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   884
iconSelectorForChange:change
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   885
    | delta sym selectorOrNil |
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   886
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   887
    masterApplication notNil ifTrue:[
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   888
        selectorOrNil := masterApplication iconSelectorForChange:change.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   889
        selectorOrNil notNil ifTrue:[ ^ selectorOrNil ].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   890
    ].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   891
    delta := change deltaDetail.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   892
    sym := delta shortDeltaSymbol.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   893
    sym = #+ ifTrue:[^#iconPlus].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   894
    sym = #- ifTrue:[^#iconMinus].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   895
    sym = #= ifTrue:[^#iconEqual].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   896
    "/ different.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   897
    ^ nil.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   898
!
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   899
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   900
listEntryFor:chg 
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   901
    ^ListEntry change:chg application: self
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   902
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   903
    "Modified: / 05-12-2009 / 14:39:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   904
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
makeDependent
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   907
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   908
    "Modified: / 24-07-2009 / 22:06:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   910
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   911
makeIndependent
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
    "Modified: / 24-07-2009 / 22:06:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   916
parentOrModel
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   917
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   918
    ^self
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   919
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   920
    "Created: / 05-12-2009 / 14:14:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   921
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   922
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   923
updateList
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   924
    |inGenerator changeset newList|
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   925
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   926
    self withWaitCursorDo:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   927
        inGenerator := self inGeneratorHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   928
        changeset := inGenerator ifNil:[ #() ] ifNotNil:[ inGenerator ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   929
        self showConflictsOnlyHolder value ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   930
            newList := changeset select: [:chg | 
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   931
                           chg isConflict
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   932
                       ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   933
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   934
            | showRemoved showSame |
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   935
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   936
            showRemoved := self showRemovedHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   937
            showSame := self showSameHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   938
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   939
            newList := changeset select: [:chg | 
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   940
                           (showRemoved or:[ chg removed not ])
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   941
                               and:[showSame or:[chg delta ~~ #=]]
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   942
                       ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   943
        ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   944
        newList := self filterList: newList.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   945
        newList := newList collect:[:chg | self listEntryFor:chg ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   946
        self listHolder value ~= newList ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   947
            self listHolder value: newList.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
   948
        ]
11039
0795b98cd5f8 changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 11036
diff changeset
   949
    ]
10449
bdc2ecfadf41 ChangeSetBrowser2 refactoring/cleanup
vrany
parents: 10334
diff changeset
   950
10925
7cb47ef997fb inherits from BrowserListWithFilter
vrany
parents: 10881
diff changeset
   951
    "Modified: / 29-11-2011 / 15:38:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11039
0795b98cd5f8 changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 11036
diff changeset
   952
    "Modified: / 28-12-2011 / 15:46:15 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   953
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   955
!ChangeList methodsFor:'queries'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   956
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
hasChangeSelected
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
    ^self selectionHolder value size > 0
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   960
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   961
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   962
hasChangeSelectedAndNotRemoved
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   963
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   964
    | selection |
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
    selection := self selectionHolder value ? #().
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
    ^selection size > 0 and:
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   967
        [selection allSatisfy:[:e|e removed not]].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   968
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   969
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   970
hasSingleChangeSelected
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   971
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   972
    ^self selectionHolder value size = 1
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   973
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   974
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   975
hasSingleChangeSelectedAndCanBrowse
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   976
    self selectionHolder value ? #() do: [:each |
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   977
        |chg|
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   978
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   979
        chg := each change.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   980
        chg isClassChange ifTrue:[
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   981
            (chg isMethodChange not or:[chg isMethodCodeChange]) ifFalse:[^ false]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   982
        ].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   983
    ].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
   984
    ^ true
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   986
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   987
!ChangeList::ListEntry class methodsFor:'instance creation'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
change: aChange
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   990
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   991
    ^self new change: aChange
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   992
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   993
    "Created: / 24-07-2009 / 22:43:41 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   994
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   995
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   996
change: aChange application: anApplicationModel
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   997
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
    ^self new change: aChange; application: anApplicationModel
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
    "Created: / 05-12-2009 / 14:16:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1001
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1002
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1003
change: aChange parent: aChangeList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
    ^self new change: aChange; parent: aChangeList
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1007
    "Created: / 25-07-2009 / 23:33:00 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
!ChangeList::ListEntry methodsFor:'accessing'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
application
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
    ^ application ifNil:[super application]
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
    "Modified: / 05-12-2009 / 14:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1018
application:anApplicationModel
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1019
    application := anApplicationModel.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1021
    "Modified: / 05-12-2009 / 14:15:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1022
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1023
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1024
change
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1025
    ^ change
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1026
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1028
change:aChange
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1029
    self assert: ((aChange isKindOf: Change) or:[aChange isKindOf: RefactoryChange]).
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
    change := aChange.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1032
    "Modified: / 25-07-2009 / 23:40:38 / Jan Vrany <vranyj1@fel.cvut.cz>"
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1033
    "Modified (format): / 04-12-2011 / 14:58:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
changeClass
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
    ^change changeClass
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1041
changeSource
11662
ec99e522b4c9 code cleanup
Claus Gittinger <cg@exept.de>
parents: 11657
diff changeset
  1042
    "the changes source"
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1043
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1044
    ^change changeSource
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1045
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1046
    "Created: / 19-07-2011 / 12:03:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11662
ec99e522b4c9 code cleanup
Claus Gittinger <cg@exept.de>
parents: 11657
diff changeset
  1047
    "Modified (comment): / 25-07-2012 / 17:39:39 / cg"
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1048
!
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1049
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
children
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1051
10881
07359595b386 changed: #buttonPress:x:y:view:
Claus Gittinger <cg@exept.de>
parents: 10657
diff changeset
  1052
    children isNil ifTrue:[
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1053
        change isCompositeChange ifTrue:[
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1054
            children := OrderedCollection new: change changes size.
12657
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1055
            self application showConflictsOnlyHolder value ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1056
                change changes do:[:chg|
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1057
                    (chg isConflict) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1058
                        children add: ((self application listEntryFor: chg) parent: self)
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1059
                    ]
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1060
                ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1061
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1062
                |showRemoved showSame|
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1063
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1064
                showRemoved := self application showRemovedHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1065
                showSame := self application showSameHolder value.
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1066
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1067
                change changes do:[:chg|
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1068
                    ((showRemoved or:[ chg removed not ])
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1069
                        and:[showSame or:[chg delta ~~ #=]]) 
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1070
                            ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1071
                                children add: ((self application listEntryFor: chg) parent: self)
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1072
                            ]
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1073
                ].
Claus Gittinger <cg@exept.de>
parents: 12640
diff changeset
  1074
            ]
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1075
        ] ifFalse:[
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1076
            children :=  #()
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1077
        ]
10881
07359595b386 changed: #buttonPress:x:y:view:
Claus Gittinger <cg@exept.de>
parents: 10657
diff changeset
  1078
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
    ^children
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
    "Created: / 25-07-2009 / 23:32:39 / Jan Vrany <vranyj1@fel.cvut.cz>"
10881
07359595b386 changed: #buttonPress:x:y:view:
Claus Gittinger <cg@exept.de>
parents: 10657
diff changeset
  1082
    "Modified (format): / 18-11-2011 / 14:56:25 / cg"
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1083
    "Modified: / 04-12-2011 / 15:08:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
delta
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1087
    "/ obsolete: please use deltaDetail
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
    ^change delta
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
    "Created: / 29-10-2010 / 14:32:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10657
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1092
    "Modified (comment): / 31-08-2011 / 10:30:02 / cg"
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1093
!
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1094
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1095
deltaDetail
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1096
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1097
    ^change deltaDetail
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1098
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1099
    "Created: / 29-10-2010 / 14:32:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7df080baff44 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 10451
diff changeset
  1100
    "Created: / 31-08-2011 / 10:29:21 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1101
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1102
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1103
imageSource
11662
ec99e522b4c9 code cleanup
Claus Gittinger <cg@exept.de>
parents: 11657
diff changeset
  1104
    "return the source for the in-image version of the change"
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1105
11662
ec99e522b4c9 code cleanup
Claus Gittinger <cg@exept.de>
parents: 11657
diff changeset
  1106
    ^ change imageSource
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1107
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1108
    "Created: / 19-07-2011 / 12:03:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11662
ec99e522b4c9 code cleanup
Claus Gittinger <cg@exept.de>
parents: 11657
diff changeset
  1109
    "Modified (comment): / 25-07-2012 / 17:38:57 / cg"
10334
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1110
!
3ac95963b1a5 Improvements in diffing tools
vrany
parents: 10064
diff changeset
  1111
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
label
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1113
    | label |
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
    label := change displayString.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
    self removed ifTrue:[label := label asText colorizeAllWith: Color gray].
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
    ^label
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1118
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1119
    "Created: / 05-11-2008 / 08:20:02 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
    "Modified: / 25-07-2009 / 23:43:23 / Jan Vrany <vranyj1@fel.cvut.cz>"
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1121
    "Modified: / 05-12-2009 / 14:46:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1122
    "Modified (format): / 27-07-2012 / 21:26:34 / cg"
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1123
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1124
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1125
removed
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1126
    ^ change removed
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1129
removed:aBoolean
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1130
    change removed: aBoolean.
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1132
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1133
source
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
    ^change source
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1137
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1138
x
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
    ^ x
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
!ChangeList::ListEntry methodsFor:'displaying'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1143
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1144
displayLabel:aLabel h:lH on:aGC x:newX y:y h:h 
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1145
    | cx icon |
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1146
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1147
    cx := x := newX.
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1148
    self application allowRemoveHolder value ifTrue:[
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1149
        (icon := self iconRemoved) notNil ifTrue:[
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1150
            icon displayOn: aGC x: cx y: y + (h / 2) - (icon height / 2) 
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1151
        ].
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1152
        cx := cx + 22."experimental value - this looks good"
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1153
    ].
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1154
    (icon := self iconDelta) notNil ifTrue:[
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1155
        icon displayOn: aGC x: cx y: y + (h / 2) - (icon height / 2) 
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1156
    ].
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1157
    cx := cx + 16."12 + 2px gap"                
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
    super displayLabel:aLabel h:lH on:aGC x:cx y:y h:h
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
11194
b7882ec27c05 refactoring in ChangeSetBrowser2
vrany
parents: 11039
diff changeset
  1161
    "Modified: / 24-01-2012 / 21:44:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1162
    "Modified: / 27-07-2012 / 21:26:23 / cg"
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1163
!
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1164
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1165
iconDelta
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1166
    | iconSelector |
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1167
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1168
    iconSelector := self iconSelector.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1169
    iconSelector isNil ifTrue:[^nil].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1170
    self removed ifTrue:[iconSelector := iconSelector , #Grayed].
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1171
    ^self application class perform: iconSelector asSymbol.
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1172
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1173
    "Created: / 05-12-2009 / 14:11:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1174
    "Modified: / 18-11-2011 / 14:56:33 / cg"
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1175
!
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1176
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1177
iconRemoved
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1178
    |appClass|
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1179
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1180
    appClass := self application class.
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1181
    ^self removed 
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1182
        ifTrue: [appClass uncheckedIcon ]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1183
        ifFalse:[appClass checkedIcon ]
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1184
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1185
    "Created: / 05-12-2009 / 14:11:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1186
!
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1188
iconSelector
12666
c90e266fc135 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 12657
diff changeset
  1189
    ^ application iconSelectorForChange:change
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
! !
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1192
!ChangeList::ListEntry methodsFor:'protocol-queries'!
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1193
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1194
hasChildren
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1195
    ^ change isCompositeChange and:[change changes notEmptyOrNil ].
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1196
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1197
    "Created: / 04-12-2011 / 14:45:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11710
f2c0566732e7 codeAspect fixes (almost)
Claus Gittinger <cg@exept.de>
parents: 11662
diff changeset
  1198
    "Modified (format): / 27-07-2012 / 21:25:34 / cg"
10957
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1199
! !
53571e562d5e bugfixes
vrany
parents: 10925
diff changeset
  1200
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1201
!ChangeList class methodsFor:'documentation'!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1202
10451
3fe1648adef5 ChangeSetBrowser2 - fixes
vrany
parents: 10449
diff changeset
  1203
version
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12666
diff changeset
  1204
    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.25 2013-09-05 10:46:11 vrany Exp $'
10451
3fe1648adef5 ChangeSetBrowser2 - fixes
vrany
parents: 10449
diff changeset
  1205
!
3fe1648adef5 ChangeSetBrowser2 - fixes
vrany
parents: 10449
diff changeset
  1206
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1207
version_CVS
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12666
diff changeset
  1208
    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.25 2013-09-05 10:46:11 vrany Exp $'
10009
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1209
!
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1210
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1211
version_SVN
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1212
    ^ '§Id: Tools__ChangeList.st 7486 2009-10-26 22:06:24Z vranyj1 §'
fe8b32698600 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1213
! !
12108
efa871deeab7 class: Tools::ChangeList
Claus Gittinger <cg@exept.de>
parents: 11795
diff changeset
  1214