<div dir="auto">Interesting. I cannot give a very informed opinion because I don’t program with Morphic very often, but I have some doubts about using inheritance for this (and why not for other properties? ColoredMorph, BorderedMorph, etc?). I wonder if it could be implemented with properties instead (optional properties, that a morph might have or not), or by composition. The reason to not use properties and make it an instance variable is for speed?</div><div dir="auto"><br></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Sep 8, 2024 at 03:49 Juan Vuletich via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">On 9/6/2024 11:47 AM, ken.dickey--- via Cuis-dev wrote:<br>
> And for the rest of us, here is the 3 combined ChangeSets into one.<br>
><br>
> I think I have now reconstituted all the code I lost.<br>
><br>
> Again, sorry for the lost fileout.<br>
><br>
> Please test & feedback.<br>
><br>
> Cheers,<br>
> -KenD<br>
<br>
Hi Ken,<br>
<br>
I think this is useful. But I'm not really happy with adding the ivar to <br>
BoxedMorph. I reviewed the immediate subclasses of BoxedMorph, and on a <br>
quick look...<br>
<br>
Classes where 'padding' makes sense:<br>
HoverHelpMorph<br>
ImageMorph<br>
LabelMorph<br>
LayoutMorph<br>
MenuMorph<br>
PluggableMorph<br>
TextParagraphMorph<br>
TranscriptMorph<br>
<br>
Classes where 'padding' doesn't make sense:<br>
AutoCompleterMorph<br>
DraggingGuideMorph<br>
HaloHandleMorph<br>
HaloMorph<br>
HandMorph<br>
InnerPluggableMorph<br>
LayoutAdjustingMorph<br>
MenuLineMorph<br>
PasteUpMorph<br>
ProgressBarMorph<br>
<br>
So, I think it would be better to add PaddedMorph as subclass of <br>
BoxedMorph, with ivar 'padding'. Then we could (pehaps gradually) change <br>
the superclass of classes where we see the advantage, starting with your <br>
code to enable the feature.<br>
<br>
Thoughts?<br>
<br>
Thanks,<br>
<br>
-- <br>
Juan Vuletich<br>
<a href="http://cuis.st" rel="noreferrer" target="_blank">cuis.st</a><br>
<a href="http://github.com/jvuletich" rel="noreferrer" target="_blank">github.com/jvuletich</a><br>
<a href="http://researchgate.net/profile/Juan-Vuletich" rel="noreferrer" target="_blank">researchgate.net/profile/Juan-Vuletich</a><br>
<a href="http://independent.academia.edu/JuanVuletich" rel="noreferrer" target="_blank">independent.academia.edu/JuanVuletich</a><br>
<a href="http://patents.justia.com/inventor/juan-manuel-vuletich" rel="noreferrer" target="_blank">patents.justia.com/inventor/juan-manuel-vuletich</a><br>
<a href="http://linkedin.com/in/juan-vuletich-75611b3" rel="noreferrer" target="_blank">linkedin.com/in/juan-vuletich-75611b3</a><br>
<a href="http://twitter.com/JuanVuletich" rel="noreferrer" target="_blank">twitter.com/JuanVuletich</a><br>
<br>
-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div></div>