[squeak-dev] The Trunk: EToys-mt.362.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Oct 16 11:09:57 UTC 2019


Marcel Taeumel uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-mt.362.mcz

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

Name: EToys-mt.362
Author: mt
Time: 16 October 2019, 1:09:43.789134 pm
UUID: 7dc0a2c8-30d8-ff4e-99b2-400a969a4c8b
Ancestors: EToys-mt.361

Minor fix because #select: keeps the original kind, which is a set, which cannot be sorted in-place.

=============== Diff against EToys-mt.361 ===============

Item was changed:
  ----- Method: SearchingViewer>>doSearchFrom:interactive: (in category 'search') -----
  doSearchFrom: aSource interactive: isInteractive
  	"Perform the search operation.  If interactive is true, this actually happened because a search button was pressed; if false, it was triggered some other way for which an informer would be inappropriate."
  
  	| searchFor aVocab aList all anInterface useTranslations scriptNames addedMorphs |
  
  	searchString := aSource isString
  		ifTrue:
  			[aSource]
  		ifFalse:
  			[(aSource isKindOf: PluggableTextMorph) "old"
  				ifTrue:
  					[aSource text string]
  				ifFalse:
  					[aSource contents asString]].
  	searchFor := searchString asLowercaseAlphabetic.
  
  	aVocab := self outerViewer currentVocabulary.
  	(useTranslations := (scriptedPlayer isPlayerLike) and: [aVocab isEToyVocabulary])
  		ifTrue:
  			[all := scriptedPlayer costume selectorsForViewer.
  			all addAll: (scriptNames := scriptedPlayer class namedTileScriptSelectors)]
  		ifFalse:
  			[all := scriptNames := scriptedPlayer class allSelectors].
  	aList := all select:
  		[:aSelector | (aVocab includesSelector: aSelector forInstance: scriptedPlayer ofClass: scriptedPlayer class limitClass: ProtoObject) and:
  			[(useTranslations and: [(anInterface := aVocab methodInterfaceAt: aSelector ifAbsent: [nil]) notNil and: [anInterface wording asString asLowercaseAlphabetic includesSubstring: searchFor caseSensitive: true]])
  				or:
  					[((scriptNames includes: aSelector) or: [useTranslations not]) and:
  						[aSelector includesSubstring: searchFor caseSensitive: false]]]].
+ 	aList := aList sorted.
- 	aList sort.
  
  	self removeAllButFirstSubmorph. "that being the header"
  	self addAllMorphs:
  		((addedMorphs := scriptedPlayer tilePhrasesForSelectorList: aList inViewer: self)).
  	self enforceTileColorPolicy.
  	self secreteCategorySymbol.
  	self world ifNotNil: [self world startSteppingSubmorphsOf: self].
  	self adjustColorsAndBordersWithin.
  
  	owner ifNotNil: [owner isStandardViewer ifTrue: [owner fitFlap].
  
  	(isInteractive and: [addedMorphs isEmpty]) ifTrue:
  		[searchFor ifNotEmpty:
  			[self inform: ('No matches found for "' translated), searchFor, '"']]]!



More information about the Squeak-dev mailing list