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"? 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: |
I spotted the same problem today… yes, fogbugz is better place :)
Esteban > On 22 Jun 2016, at 00:23, Holger Freyther <[hidden email]> wrote: > > 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"? > > > 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: |
yay, thanks. I wanted to report this but forgot
> On 22 Jun 2016, at 00:27, Esteban Lorenzano <[hidden email]> wrote: > > I spotted the same problem today… yes, fogbugz is better place :) > > Esteban > >> On 22 Jun 2016, at 00:23, Holger Freyther <[hidden email]> wrote: >> >> 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"? >> >> >> 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: > > |
In reply to this post by Holger Freyther
On Wed, Jun 22, 2016 at 6:23 AM, Holger Freyther <[hidden email]> wrote:
> Hi, > > would fogbugz be the better place for reports like this? Yes. But it might get less immediate attention than you need. If something breaks your workflow, its *also* good to raise attention on the mail list, and follow up with a link to the Fogbugz issue if you didn't create one already. cheers -ben > 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"? > > > 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: |
Thanks for reporting... I created the case and propose a fast fix: Despite my "quick fix" avoids the DNU, we should discuss what should happen when there are lost changes in non.interactive mode. I think EpLostChangesDetector should only perform its detection. What'd be the right test to do? "Smalltalk isInteractive"? Martin On Tue, Jun 21, 2016 at 8:50 PM, Ben Coman <[hidden email]> wrote: On Wed, Jun 22, 2016 at 6:23 AM, Holger Freyther <[hidden email]> wrote: |
In reply to this post by Holger Freyther
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 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! 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: > |
On Wed, Jun 22, 2016 at 4:31 AM, stepharo <[hidden email]> wrote:
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. So, if a morph builder wants to know the textColor and other colors of the current theme, how to access them? Martin
|
Le 22/6/16 à 14:35, Martin Dias a
écrit :
Normally the theme should be know by the builder. No global variable and the tool should register to the Theme and when the theme changed they should change too. Right now all the Smalltalk ui.... is a global variable. Stef
|
Free forum by Nabble | Edit this page |