Mantis - Squeak
Viewing Issue Advanced Details
591 Morphic major always 12-03-04 05:03 01-07-05 20:57
closed 3.9  
none 3.8  
0000591: Embed bugs in rotated morph
Ok. For this bug
from supplies grab a rectange and an ellipse.

With the halo handle twist the rectangle.

Bring the ellipse over to the tilted rectangle and from the red handle menu pick embed.

The sub menu will give 3 choices in sq3.7g-3985 and two in sq3.9a6404 or above.

The older sq3.7 offers the choice of Rectange or RectangleMorph the newer sq3.9 just the option of Rectange.

Embedding the ellipse into Rectangle starts the weirdness.

The ellipse jumps, tilts and its center becomes the center of the rotation. If there is a script (say one that does Rectangle turn by 5) it now refers to the ellipse.

If the halo handle is used to bring the heading back to north. The rectangle now jumps and is no longer embedded in the ellipse. The rectange is renamed rectangle1 and the ellipse is now named rectangle. If the rectangle had scripts it is the ellipse that is now connected to them.

Other interesting obervations. With the ellipse embedded into Rectangle using the halo menu to send it to the back makes the center of rotation go to the center of the rectangleMorph.
This of course is a bug with embedding more than one morph into a renderer. sq3.7 gives the option of avoiding this by picking embed into RectangleMorph sq3.9a does not.

I had a hard time deciding on the severity of this bug. It's like the guy going to the doctor and saying "Doc it hurts when I do this."
The doctor realizing how hard it would be to correct the real problem says to the patient "Then don't do that."
To the doctor its a minor problem.
To the patient depending on what he needs to do it is major.

You choose.

Embedding into the rendering morph leads to weirdness.
Losing the option of embedding into the Rectangle morph is not good either. [^] (332 bytes) 01-02-05 08:10

12-03-04 14:53   
The bug is trivial to fix by changing Morph>>potentialEmbeddingTargets to use "m isFlexMorph" instead of "m isFlexed".
01-02-05 08:12   
Yep. Tried ar's fix and it seemed to do the job. Uploaded fixed method.
01-07-05 19:22