WAReportColumn


Seaside-Components-Widgets

Comment:



Hierarchy:

ProtoObject
Object
WAReportColumn
  • EnhancedReportColumn
  • SCReportColumn

Summary:

instance variables:

clickBlock formatBlock hasTotal sortBlock title valueBlock

methods:

instance class
accessing public as yet unclassified

Detail:

instance variables:

clickBlock
inferredType:
UndefinedObject
formatBlock
InitialValue:
[] in WAReportColumn>>initialize {[:x | x asString]}
inferredType:
BlockContext
hasTotal
InitialValue:
false
inferredType:
False
sortBlock
InitialValue:
[] in WAReportColumn>>initialize {[:a :b | a <= b]}
inferredType:
BlockContext
title
InitialValue:
Untitled
inferredType:
String
valueBlock
InitialValue:
[] in WAReportColumn>>initialize {[:row | nil]}
inferredType:
BlockContext

instance methods:

accessing
clickBlock: aBlock

	clickBlock _ aBlock
columnClickBlock: aBlock

	self clickBlock: [:r | aBlock value: (self valueForRow: r)]
formatBlock: anObject

	formatBlock := anObject
hasTotal: aBoolean

	hasTotal _ aBoolean 
index: aNumber

	valueBlock _ [:row | row at: aNumber]
initialize

	formatBlock _ [:x | x asString].
	sortBlock _ [:a :b | a <= b].
	valueBlock _ [:row | nil].
	clickBlock _ nil.
	title _ 'Untitled'.
	hasTotal _ false.
selector: aSymbol

	valueBlock _ [:row | row perform: aSymbol]
sortBlock: anObject

	sortBlock := anObject
title: aString

	title _ aString
valueBlock: aBlock

	valueBlock _ aBlock

public
canChoose

	^ clickBlock notNil
canSort

	^ sortBlock notNil
chooseRow: row

	^ clickBlock value: row
sortRows: anArray

	|assocs|
	assocs _ anArray collect: [:ea | ea -> (self valueForRow: ea)].
	assocs _ assocs asSortedCollection: [:a :b | sortBlock value: a value value: b value].
	^ assocs collect: [:ea | ea key]
textForRow: row

	^ formatBlock value: (self valueForRow: row)
title

	^title
totalForRows: aCollection

	^ hasTotal
		ifFalse: ['']
		ifTrue: [formatBlock value: (aCollection detectSum: [:r | self valueForRow: r])]
valueForRow: row

	^ valueBlock value: row

class methods:

as yet unclassified
new

	^ super new initialize
selector: aSymbol

	^ self selector: aSymbol title: aSymbol capitalized
selector: aSymbol title: aString

	^ self selector: aSymbol title: aString onClick: nil
selector: aSymbol title: aString onClick: aBlock

	^ self new
		title: aString;
		selector: aSymbol;
		clickBlock: aBlock

^top


- made by Dandelion -