Mantis - Squeak
Viewing Issue Advanced Details
851 Morphic minor always 01-29-05 09:05 11-28-06 04:33
wiz  
 
normal  
feedback  
reopened  
none    
none  
0000851: [Fix] BalloonRectangleMorph sampleInstance doesn't fully initialize.
To get this bug requeast a BalloonRectangleMorph sampleInstance (I used the menus sample instance). It chokes because the gradient fill origin does not get initialized. Modifing
OrientedFill>>origin
^ origin ifNil: [ 0@0 ]
allows it to work.
See also 0000833 for related fill bug fix.

Also this is only a partial fix. The red button menu for the sample instance fails to come up because borderstyle can't perform gradient fill styles.
I choose to leave that for someone else to fix.
 OrientedFillStyle-origin.st.gz [^] (202 bytes) 01-29-05 09:05
 BalloonRectSample.jpeg [^] (2,724 bytes) 01-29-05 09:06
 BalloonRectMorph-wiz.1.cs [^] (517 bytes) 02-01-05 23:09
 BalloonRectMangle2.jpeg [^] (8,117 bytes) 02-01-05 23:21
 BalloonRectMangle3.jpeg [^] (8,263 bytes) 02-01-05 23:21
 BalloonEllipseMangled.jpeg [^] (2,966 bytes) 02-01-05 23:34
 TestSampleInstances.st [^] (864 bytes) 11-28-06 04:30

Notes
(0001109)
wiz   
01-29-05 09:07   
I've also included a snapshot of the Sample instance so you can see what your missing.
(0001125)
wiz   
02-01-05 23:33   
BalloonRectMorph-wiz.1.cs allows a sample instance to be gotten by reverting simple border. I simply removed dgd's too fancy gradient defaultBorderColor.

Playing with this sample other bug emerge as the morph is rotated.
The rotated form only looks right at 90 degree headings.
Also subsequent uses of the blue rotation handle seem to layer the morph into deeper layers of MatrixTransformMorph. MTM is not a good citizen for halo yet.

Getting a fresh Balloon rectange. Embedding a (transparent) ellipse in it and starting to rotate but not actually rotating it produced a manling of the ellipse border remenicent of the mangling that happens when you use a gradient fill in a similar ellipse. Hmmm.

See related 0000857.
(0001136)
wiz   
02-06-05 06:28   
The gradient fill strangeness in BalloonRectMangle2.jpg seems to be a property of radial gradient fill.

From the experiments I've been making the follow seems to be true.
if direction is allong the x or y axis then normal can be scaled and the result is a correct appearing elliptical radial fill.

Setting direction to any point then setting normal to nil to force recomputation always results in a correctly appearing circular radial fill.

Scaling the normal by more than a little will result in distortion.

The distortion looks like it depends on what quadrant or octant is being drawn.

I've been wondering what the balloon drawing routines are doing and if in some places direction and normal 's x and y 's are getting mixed up and confused.
(0001147)
wiz   
02-13-05 04:09   
see 0000877 for illumination on the radial gradient bug.
(0002326)
MarcusDenker   
08-13-05 01:33   
in 3.9
(0008451)
wiz   
11-28-06 01:28   
Though this has been marked fixed the fix is not in 7067.

In particular the method
OrientedFill>>origin has reverted.

Once that is fixed the sampleinstance will appear.

To get this bug request a BalloonRectangleMorph sampleInstance (I used the menus sample instance). It chokes because the gradient fill origin does not get initialized. Modifing
OrientedFill>>origin
^ origin ifNil: [ 0@0 ]
allows it to work.

(0008452)
wiz   
11-28-06 04:33   
TestSampleInstances.st will test to see if BalloonRectangleMorph will open when sampleInstance is requested of it.

Fails in 6076 until OrientedFillStyle-origin.st.gz is loaded then it passes.

Yours in service, --Jerome Peace