I think this is too convoluted because, like Estaban says, you want to keep the theming orthogonal with widget definition.
But, you gave me an idea:If we implement in Morph the followings:Morph>>themer^ themer ifNil: [self themerFor: self theme]
Morph>>themerFor: aTheme^ self subclassResponsibilityAnd then in a morph we would have something like this:SpotlightItemMorph>>themerFor: aTheme^ aTheme spotterThemerSpotlightItemMorph>>onSelectedself themer configureSelectedItemMorph: selfThen we could simply do pretty much what you want:SpotlightItemMorph new themer: MySpotterThemer new.I like this idea. What do you think?