<div dir="ltr">Good change. I was thinking about doing almost the same change for better differentiating between ignored and reverted changes in the list. I had wanted to do it by "graying out" the ignored changes, by displaying them in gray-colored text.<br><br>MCSaveVersionDialog>>#list<br> ^ self items collect: [:each |<br> (self reverts includes: each)<br> ifFalse: [(self ignore includes: each)<br> ifFalse: [each summary]<br> ifTrue: [Text string: '( ', each summary, ' )' attribute: (<font color="#0b5394">TextColor color: Color gray</font>)]]<br> ifTrue: [Text string: '( ', each summary, ' )' attributes: { TextEmphasis italic . TextEmphasis struckOut } ]]<br><br>For some reason, the above doesn't work, Marcel, do you know why?<br><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 11, 2015 at 9:32 AM, <span dir="ltr"><<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">A new version of Monticello was added to project The Inbox:<br>
<a href="http://source.squeak.org/inbox/Monticello-pre.623.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/inbox/Monticello-pre.623.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Monticello-pre.623<br>
Author: pre<br>
Time: 11 November 2015, 4:32:57.142 pm<br>
UUID: 7f2ebcbb-1308-4d18-b89d-04c4e3076dc8<br>
Ancestors: Monticello-pre.622<br>
<br>
Adds a different rendering of reverted items in Monticello change browsers to allow developers to remember what was already removed.<br>
This integrates with the Ignore feature of the SaveDialog.<br>
<br>
=============== Diff against Monticello-pre.622 ===============<br>
<br>
Item was changed:<br>
MCCodeTool subclass: #MCOperationsBrowser<br>
+ instanceVariableNames: 'selection reverts'<br>
- instanceVariableNames: 'selection'<br>
classVariableNames: ''<br>
poolDictionaries: ''<br>
category: 'Monticello-UI'!<br>
<br>
Item was added:<br>
+ ----- Method: MCOperationsBrowser>>advanceSelection (in category 'selecting') -----<br>
+ advanceSelection<br>
+<br>
+ self selection < items size<br>
+ ifTrue: [self selection: self selection + 1]!<br>
<br>
Item was changed:<br>
----- Method: MCOperationsBrowser>>installSelection (in category 'actions') -----<br>
installSelection<br>
| loader |<br>
selection ifNotNil:<br>
[loader := MCPackageLoader new.<br>
selection applyTo: loader.<br>
+ loader loadWithName: self changeSetNameForInstall.<br>
+ self reverts remove: selection ifAbsent: [].<br>
+ self changed: #list ]!<br>
- loader loadWithName: self changeSetNameForInstall ]!<br>
<br>
Item was changed:<br>
----- Method: MCOperationsBrowser>>list (in category 'accessing') -----<br>
list<br>
+ ^ self items collect: [:each |<br>
+ (self reverts includes: each)<br>
+ ifFalse: [each summary]<br>
+ ifTrue: [Text string: '( ', each summary, ' )' attributes: { TextEmphasis italic . TextEmphasis struckOut } ]]!<br>
- ^ self items collect: [:ea | ea summary]!<br>
<br>
Item was changed:<br>
----- Method: MCOperationsBrowser>>revertSelection (in category 'actions') -----<br>
revertSelection<br>
| loader |<br>
selection ifNotNil:<br>
[loader := MCPackageLoader new.<br>
selection inverse applyTo: loader.<br>
+ loader loadWithName: self changeSetNameForInstall.<br>
+ self reverts add: selection.<br>
+ self<br>
+ advanceSelection;<br>
+ changed: #list ]!<br>
- loader loadWithName: self changeSetNameForInstall ]!<br>
<br>
Item was added:<br>
+ ----- Method: MCOperationsBrowser>>reverts (in category 'accessing') -----<br>
+ reverts<br>
+ ^ reverts ifNil: [reverts := Set new]!<br>
<br>
Item was changed:<br>
----- Method: MCSaveVersionDialog>>ignoreSelection (in category 'actions') -----<br>
ignoreSelection<br>
selection<br>
ifNil: [ignore size = items size<br>
ifFalse: [ignore addAll: items]<br>
ifTrue: [ignore removeAll]]<br>
ifNotNil: [<br>
ignore remove: selection ifAbsent: [<br>
ignore add: selection].<br>
+ self advanceSelection].<br>
- self selection < items size<br>
- ifTrue: [self selection: self selection + 1]].<br>
self changed: #list<br>
!<br>
<br>
Item was changed:<br>
----- Method: MCSaveVersionDialog>>list (in category 'accessing') -----<br>
list<br>
+ ^ self items collect: [:each |<br>
+ (self reverts includes: each)<br>
+ ifFalse: [(self ignore includes: each)<br>
+ ifFalse: [each summary]<br>
+ ifTrue: [Text string: '( ', each summary, ' )' attribute: TextEmphasis struckOut]]<br>
+ ifTrue: [Text string: '( ', each summary, ' )' attributes: { TextEmphasis italic . TextEmphasis struckOut } ]]!<br>
- ^ self items collect: [:ea |<br>
- (self ignore includes: ea)<br>
- ifFalse: [ea summary]<br>
- ifTrue: [Text string: '( ', ea summary, ' )' attribute: TextEmphasis struckOut ]]!<br>
<br>
Item was removed:<br>
- ----- Method: MCSaveVersionDialog>>revertSelection (in category 'actions') -----<br>
- revertSelection<br>
- super revertSelection.<br>
- selection ifNotNil: [<br>
- ignore add: selection.<br>
- self changed: #list].<br>
- !<br>
<br>
<br>
</blockquote></div><br></div>