why do we need a special class for that?
Why not just a StringMorph with correct background?
On 17/4/14 16:20, Ben Coman wrote:
Build 30507 integrated slice 11492 "Kill UpdatingStringMorph,
UpdatingMenu, and NameInHaloMorph"
that removed class UpdatingStringMorph its subclass
NameInHaloMorph.
As a consequence the halo "morph label"
became hard to read. Compare the red circled areas in the
snapshots
from build.

Technically its pretty easy fix. Restoring just the #drawOn: part
of
NameStringInHalo (now subclassed from StringMorph) solves the
problem
as follows...
Adding...
StringMorph subclass: #NameStringInHalo
instanceVariableNames: ''
classVariableNames: ''
category: 'Morphic-Base-Widgets'
NameStringInHalo>>drawOn: aCanvas
aCanvas fillRectangle: self bounds color: Color white.
super drawOn: aCanvas.
and modify the following line in
HaloMorph>>addNameBeneath:string: ...
nameMorph := StringMorph contents: aString font: StandardFonts
haloFont.
to..
nameMorph := NameStringInHalo contents: aString font:
StandardFonts
haloFont.
However I'm seeking a broader picture to understand if that is the
right way to proceed...
1. Was NameStringInHalo particularly undesired or was it more a
consequence of UpdatingStringMorph being removed ?
2. Should the same class name "NameStringInHalo" be used having a
different superclass than before. Actually as I write that I am
thinking this creates an unnecessary clash with Squeak and
derivatives
that still have NameStringInHalo, and so...
3. Any suggestions for another more generic class name?
SolidStringMorph, OpaqueStringMorph, etc
4. Any suggestions for another way for a StringMorph to have a
solid
background?
cheers -ben