--- a/Tools__ChangeList.st Thu Aug 04 20:03:20 2011 +0200
+++ b/Tools__ChangeList.st Thu Aug 04 20:03:33 2011 +0200
@@ -28,7 +28,8 @@
"{ NameSpace: Tools }"
BrowserList subclass:#ChangeList
- instanceVariableNames:'listHolder listView showRemovedHolder acceptEnabledHolder'
+ instanceVariableNames:'listHolder listView showRemovedHolder showSameHolder
+ acceptEnabledHolder'
classVariableNames:'LastSelectionConditionString'
poolDictionaries:''
category:'Interface-Browsers-ChangeSet'
@@ -227,7 +228,7 @@
(SpecCollection
collection: (
(SelectionInListModelViewSpec
- name: 'SelectionInListModelView1'
+ name: 'List'
layout: (LayoutFrame 0 0 0 0 0 1 0 1)
model: selectionHolder
menu: menuHolder
@@ -384,8 +385,10 @@
#outGeneratorHolder
#selectionHolder
#showRemovedHolder
+ #showSameHolder
).
+ "Modified: / 04-08-2011 / 18:42:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!ChangeList methodsFor:'accessing'!
@@ -462,19 +465,71 @@
^ showRemovedHolder
!
-showRemovedHolder:aValueHolder
+showRemovedHolder:something
"set the 'showRemovedHolder' value holder (automatically generated)"
- showRemovedHolder ifNotNil:[showRemovedHolder removeDependent: self].
- showRemovedHolder := aValueHolder.
- showRemovedHolder ifNotNil:[showRemovedHolder addDependent: self].
+ |oldValue newValue|
+
+ showRemovedHolder notNil ifTrue:[
+ oldValue := showRemovedHolder value.
+ showRemovedHolder removeDependent:self.
+ ].
+ showRemovedHolder := something.
+ showRemovedHolder notNil ifTrue:[
+ showRemovedHolder addDependent:self.
+ ].
+ newValue := showRemovedHolder value.
+ oldValue ~~ newValue ifTrue:[
+ self update:#value with:newValue from:showRemovedHolder.
+ ].
+!
+
+showSameHolder
+ "return/create the 'showSameHolder' value holder (automatically generated)"
+
+ showSameHolder isNil ifTrue:[
+ showSameHolder := ValueHolder with: true.
+ showSameHolder addDependent:self.
+ ].
+ ^ showSameHolder
+
+ "Modified: / 04-08-2011 / 18:39:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+showSameHolder:something
+ "set the 'showSameHolder' value holder (automatically generated)"
+
+ |oldValue newValue|
+
+ showSameHolder notNil ifTrue:[
+ oldValue := showSameHolder value.
+ showSameHolder removeDependent:self.
+ ].
+ showSameHolder := something.
+ showSameHolder notNil ifTrue:[
+ showSameHolder addDependent:self.
+ ].
+ newValue := showSameHolder value.
+ oldValue ~~ newValue ifTrue:[
+ self update:#value with:newValue from:showSameHolder.
+ ].
! !
!ChangeList methodsFor:'change & update'!
update: aspect with: param from: sender
- sender == selectionHolder ifTrue:[^self selectionChanged].
+ sender == selectionHolder ifTrue:[
+ self selectionChanged.
+ ^self
+ ].
+ sender == showSameHolder ifTrue:[
+ self updateList
+ ].
+ sender == showRemovedHolder ifTrue:[
+ self updateList
+ ].
+
^super update: aspect with: param from: sender
@@ -750,8 +805,14 @@
inGenerator := self inGeneratorHolder value.
changeset := inGenerator ifNil:[ #() ] ifNotNil:[ inGenerator ].
self listHolder value:(changeset
- select:[:chg | self showRemovedHolder value or:[ chg removed not ] ]
+ select:
+ [:chg |
+ (self showRemovedHolder value or:[ chg removed not ])
+ and:[self showSameHolder not or:[chg delta ~~ #=]]
+ ]
thenCollect:[:chg | self listEntryFor:chg ])
+
+ "Modified: / 04-08-2011 / 18:41:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!ChangeList methodsFor:'queries'!
@@ -852,12 +913,17 @@
children ifNil:
[children :=
change isCompositeChange
- ifTrue:[change changes collect:
- [:chg|(self application listEntryFor: chg) parent: self]]
- ifFalse:[#()]].
+ ifTrue:[change changes select:
+ [:chg|
+ (self application showRemovedHolder value or:[ chg removed not ])
+ and:[self application showSameHolder value or:[chg delta ~~ #=]]]
+ thenCollect:[:chg|(self application listEntryFor: chg) parent: self]]
+ ifFalse:[#()]
+ ].
^children
"Created: / 25-07-2009 / 23:32:39 / Jan Vrany <vranyj1@fel.cvut.cz>"
+ "Modified: / 04-08-2011 / 18:48:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
delta
@@ -959,7 +1025,7 @@
!ChangeList class methodsFor:'documentation'!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.3 2011-07-19 12:33:32 vrany Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.4 2011-08-04 18:03:33 vrany Exp $'
!
version_SVN