On Wed, Jun 22, 2016 at 4:31 AM, stepharo <[email protected]> wrote:

>
>
> Le 22/6/16 à 00:23, Holger Freyther a écrit :
>
>> Hi,
>>
>> would fogbugz be the better place for reports like this? It looks like
>> the introduction of Epicea has broken my use of headless images?
>>
>> Should >>#initialize use "Smalltalk ui theme" instead of "UIManager
>> default theme"?
>>
>
> Both loosk terrible. but Smalltalk ui theme is really a bad idea.
> We should really remove this cancer XXX ff  zz
>
>
I used it in a morph-builder visitor, that receives an epicea model object
and answers a morph. I only access the textColor, but I can avoid it.


> If a tool need a theme, then it should have an instance variable theme and
> this instance var should be well initialized.
> This pattern sucks!
>

So, if a morph builder wants to know the textColor and other colors of the
current theme, how to access them?

Martin



>
> Stef
>
>
>>
>> NonInteractiveUIManager>>theme
>> NonInteractiveUIManager(Object)>>doesNotUnderstand: #theme
>> EpDisplayMorphVisitor>>initialize
>> EpDisplayMorphVisitor class(Behavior)>>new
>> EpEntryItem>>displayWidget
>> [ :item | item displayWidget ] in EpLogBrowser>>initializeItemsModel in
>> Block: [ :item | item displayWidget ]
>> BlockClosure>>cull:
>> BlockClosure>>cull:cull:
>> TreeModel>>wrapItem:
>> [ :node | self wrapItem: node content ] in TreeModel>>initialize in
>> Block: [ :node | self wrapItem: node content ]
>> [ :node :cont | self rowMorphGetSelector value: node ] in
>> SpecTreeColumn(MorphTreeColumn)>>rowMorphGetterBlock in Block: [ :node
>> :cont | self rowMorphGetSelector value: no...etc...
>> SpecTreeColumn>>rowMorphFor:
>> [ :col |
>> | v |
>> v := col rowMorphFor: complexContents.
>> controls add: v.
>> col -> v ] in MorphTreeNodeMorph>>buildRowMorph in Block: [ :col | ...
>> OrderedCollection>>collect:
>> MorphTreeNodeMorph>>buildRowMorph
>> MorphTreeNodeMorph>>initRow
>> MorphTreeNodeMorph>>initWithContents:prior:forList:indentLevel:
>> [ :item :idx |
>> priorMorph := self indentingItemClass new
>>         initWithContents: item
>>         prior: priorMorph
>>         forList: self
>>         indentLevel: newIndent.
>> firstAddition ifNil: [ firstAddition := priorMorph ].
>> morphList add: priorMorph.
>> "Was this row expanded ? if true -> expand it
>>                         again "
>> ((item hasEquivalentIn: expandedItems) or: [ priorMorph isExpanded ])
>>         ifTrue: [ priorMorph isExpanded: true.
>>                 priorMorph
>>                         addChildrenForList: self
>>                         addingTo: morphList
>>                         withExpandedItems: expandedItems ] ] in
>> MorphTreeMorph>>addMorphsTo:from:withExpandedItems:atLevel: in Block: [
>> :item :idx | ...
>> OrderedCollection(SequenceableCollection)>>withIndexDo:
>> OrderedCollection(SequenceableCollection)>>doWithIndex:
>> MorphTreeMorph>>addMorphsTo:from:withExpandedItems:atLevel:
>> MorphTreeMorph>>addSubmorphsFromNodeList:previouslyExpanded:
>> MorphTreeMorph>>addSubmorphsFromNodeList
>> MorphTreeMorph>>buildContents
>> MorphicTreeAdapter>>buildWidget
>> MorphicTreeAdapter(AbstractAdapter)>>adapt:
>> SpecInterpreter>>actionToPerformWithSelector:arguments:
>> SpecInterpreter>>performNextSelectorAndIncrementIndex
>> SpecInterpreter>>interpretASpec:selector:
>> SpecInterpreter>>interpretASpec:model:selector:
>> SpecInterpreter class>>private_interpretASpec:model:selector:
>>
>>
>
>

Reply via email to