[Pkg] The Trunk: Morphic-mt.1577.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Oct 15 11:58:28 UTC 2019

Marcel Taeumel uploaded a new version of Morphic to project The Trunk:

==================== Summary ====================

Name: Morphic-mt.1577
Author: mt
Time: 15 October 2019, 1:58:16.523992 pm
UUID: 1d4a5d6b-aeee-5242-b9ef-d2c81fedd846
Ancestors: Morphic-mt.1576

Better error message in pluggable lists for misbehaving models. :-)

=============== Diff against Morphic-mt.1576 ===============

Item was changed:
  ----- Method: PluggableListMorph>>getFullList (in category 'model access - cached') -----
  	"The full, unfiltered list. Cached result, see #updateList. Prefer getListSelector over getListElementSelector if both a set."
  	^ fullList ifNil: [
  		fullList := getListSelector
  			ifNotNil: [:sel | model perform: sel]
  			ifNil: [(getListSizeSelector notNil and: [getListElementSelector notNil])
  				ifTrue: [	(1 to: self getListSize) collect: [:index | self getListItem: index]]
+ 				ifFalse: [#() "We cannot get the full list."]].
+ 		fullList ifNil: [Error signal: 'The model must never provide ''nil'' as a list but only a collection.'].
+ 		fullList]!
- 				ifFalse: [#() "We cannot get the full list."]]]!

Item was changed:
  ----- Method: PluggableListMorph>>updateListFilter (in category 'updating') -----
  	| selection |
+ 	selection := self selectionIndex = 0 "Avoid fetching #getList here."
+ 		ifTrue: [nil]
+ 		ifFalse: [self selection].
- 	selection := self selection.
  	list := nil.
  	modelToView := nil.
  	viewToModel := nil.
  	self getList.
  	"Try to restore the last selection."
  	selection ifNotNil: [self selection: selection].!

More information about the Packages mailing list