Thanks. Still, when I do not have the initialize in the ClassMethodBrowser, the thing doesn't work as the models aren't initialized properly.
I'll check again. I am trying to recreate the example from scratch to understand how all of this works. Regards, Phil 2013/2/19 Benjamin <[email protected]>: > The initialise method should not exists anymore. > > Probably the rest of an old refactoring. > > The "right" way is to use initialize for initialising your inst var (other > than sub widgets), > initializeWidgets for initialising sub widgets (instantiate them, set them, > etc) and > initializePresenter to specify the interactions between sub widgets. > > Thanks for the report :) > > Ben > > On Feb 18, 2013, at 9:53 PM, [email protected] wrote: > > MethodBrowser works without that initialize (and uses > initializeWidgets for the instantiation) where ClassMethodBrowser > requires one (doesnt work without as models are nil). > > ClassMethodBrowser>>initialize > "Initialization code for ClassMethodBrowser" > > super initialize. > > listModel := self instantiate: ListComposableModel. > methodModel := self instantiate: MethodBrowser. > > self focusOrder > add: listModel; > add: methodModel. > > listModel whenSelectedItemChanged: [:selection | > selection > ifNotNil: [:class | > methodModel methods: (class methodDict values sort: [:a :b | a > selector < b selector]). > methodModel listModel resetSelection ]]. > > methodModel wrapWith: [:method | method selector ]. > > And > > ClassMethodBrowser>>initializeWidgets > > self instantiateModels: #( > listModel ListComposableModel > methodModel MethodBrowser ). > > self focusOrder > add: listModel; > add: methodModel. > > methodModel displayBlock: [:method | method selector ]. > > has the instantiateModels. > > There seems to be a double instantiation in here... > > What is the right way to proceed? The Spec Report of June 2012 and the > Spec tex thing in the SCM aren't right, so I wonder what the right way > to do things is. > > TIA > > Phil > >
