well well well

messageList
        "Answer an Array of the message selectors of the currently selected 
message category, provided that the messageCategoryListIndex is in proper 
range.  Otherwise, answer an empty Array  If messageCategoryListIndex is found 
to be larger than the number of categories (it happens!), it is reset to zero."
        | sel |
        (sel := self messageCategoryListSelection) ifNil: [
                ^ self classOrMetaClassOrganizer
                        ifNil: [Array new]
                        ifNotNil: [self classOrMetaClassOrganizer 
allMethodSelectors]
        ].

        ^ (self classOrMetaClassOrganizer listAtCategoryNumber: 
messageCategoryListIndex)
                                ifNil: [messageCategoryListIndex := 0.  Array 
new]

it looks like messageList or allMethodSelectors got changed and do not return 
anymore an indexable collection.
So I will fix that too. 

Stef



On Nov 24, 2013, at 9:24 PM, Stéphane Ducasse <[email protected]> wrote:

> Smalltalk tools register: Browser as: #browser
> Smalltalk tools openClassBrowser
> 
> 
> 
> PluggableListMorph was not robust enough
> Apparently when getListSelector returns a set (like messageList now in 3.0 
> then getList breaks
> 
> getList
>       "Answer the list to be displayed.  Caches the returned list in the 
> 'list' ivar"
>       getListSelector == nil ifTrue: [^ #()].
>       list := model perform: getListSelector.
>       list == nil ifTrue: [^ #()].
>       list := list collectWithIndex: [ :item :index | self wrapItem: item 
> index: index ].
>       ^ list
> 
> => fix the problem. I will produce a slice. And I think that the messageList 
> returning a set is a mistake too.
> 
> getList
>       "Answer the list to be displayed.  Caches the returned list in the 
> 'list' ivar"
>       getListSelector == nil ifTrue: [^ #()].
>       list := (model perform: getListSelector) asArray.
>       list == nil ifTrue: [^ #()].
>       list := list collectWithIndex: [ :item :index | self wrapItem: item 
> index: index ].
>       ^ list
> 
> Stf


Reply via email to