--- a/DSVColumnView.st Tue Apr 27 19:04:44 2010 +0200
+++ b/DSVColumnView.st Thu May 06 10:27:19 2010 +0200
@@ -1065,7 +1065,7 @@
list:aRawList
"set the list of rows"
- |newList selectionHasChanged sortColNr sortSelectorOrBlock|
+ |newList selectionHasChanged sortColNr sortSelectorOrBlock sortBlockSelector sortBlock|
"/ remove selection without redraw
@@ -1100,12 +1100,18 @@
"/ list := OrderedCollection withAll:aRawList.
newList := aRawList copyAsOrderedCollection.
(sortColNr := labelView indexOfSortColumn) notNil ifTrue:[
- sortSelectorOrBlock := (columnDescriptors at:sortColNr) sortSelector.
- sortSelectorOrBlock notNil ifTrue:[
- sortSelectorOrBlock isBlock ifTrue:[
- newList sort:sortSelectorOrBlock
- ] ifFalse:[
- newList sort:[:a :b | (a perform:sortSelectorOrBlock) < (b perform:sortSelectorOrBlock)]
+ sortBlockSelector := (columnDescriptors at:sortColNr) sortBlockSelector.
+ sortBlockSelector notNil ifTrue:[
+ sortBlock := self application perform:sortBlockSelector.
+ newList sort:sortBlock
+ ] ifFalse:[
+ sortSelectorOrBlock := (columnDescriptors at:sortColNr) sortSelector.
+ sortSelectorOrBlock notNil ifTrue:[
+ sortSelectorOrBlock isBlock ifTrue:[
+ newList sort:sortSelectorOrBlock
+ ] ifFalse:[
+ newList sort:[:a :b | (a perform:sortSelectorOrBlock) < (b perform:sortSelectorOrBlock)]
+ ].
].
].
labelView reverseSort ifTrue:[
@@ -1129,6 +1135,8 @@
].
cachedPreferredExtent := nil.
self contentsChanged.
+
+ "Modified: / 06-05-2010 / 10:22:31 / cg"
! !
!DSVColumnView methodsFor:'accessing-visibility'!
@@ -4601,9 +4609,9 @@
!DSVColumnView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.255 2009-11-11 21:25:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.256 2010-05-06 08:27:19 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.255 2009-11-11 21:25:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.256 2010-05-06 08:27:19 cg Exp $'
! !