Fix List
The numbered items in this list refer to the numbers of the QA test case in
Fails.htm. Each item here indicates whether the reported failure should be
fixed or deferred. For the items designated Fix, there are
some notes describing roughly how the fix can be accomplished.
A Defer designation means that whatever code is causing the
failure should be surrounded by a conditional compilation block so that it is
removed from the planned stable release.
-
Fix. Should just be a matter of checking if start and end
points of curve are identical, and if so, creating no new graphic object.
-
Fix. Should be basically the same as fix to failure 1. I.e.,
if there is no mouse drag at all for ellipse creation, then don't create any
ellipse object at all.
-
Fix if not too hard, otherwise Defer. See
rotate code and how it's dealing with images. If this turns out to be too hard
to fix, it's not a must-have feature. It's worth some investigation, but don't
spend more than a few days on it.
-
Fix. Basically the same problem as item 2.
-
Fix. Check code for the stretch command when applied to a
multi-line. Evidently, the multi-line parameters are being set to bad values
when stretch degenerates the multi-line to a vert or horz position. May be
related to a divide-by-zero problem or loss of precision.
-
Same as 5, but for scale command instead of stretch.
-
Fix. Basically the same as item 1.
-
Fix. It seems there's a recurring general problem with
degenerate-shaped 2-D objects, when one of the dimension sizes is 0. In this
case, it freaks badly. See the rectangle drawing code to fix.
-
This is the same as item 8, but in horz instead of vert dimension.
-
Fix. Same problem as item 3.
-
Fix. Look at scaling code when zoomed in or out to see what's
going on. Could be another precision problem. While here, see why grab is
more difficult when zoomed out (i.e., to small size). It could be that grab-
delta gets scaled down along with drawing, which it should not.
-
Fix if not too hard, otherwise Defer. This
is in the same category as item 3, only here it's scaling an image as opposed
to rotating it. See scale code and how it's dealing with images. If this
turns out to be too hard to fix, it's not a must-have feature. It's worth some
investigation, but don't spend more than a few days on it.
-
Fix. Basically the same as items 1 and 7.
-
Fix. This item and items 15 - 18 are all related to
stretching various shapes. See the stretch code for each case to do the fix.
It may well be that there is a single coding problem in the stretch code common
to all of these user-level stretching problems.
-
See item 14.
-
See item 14.
-
See item 14.
-
See item 14.
-
Fix. This problem is similar to items 1, 7, and 13. Here the
fix is not to create an empty text object of the user doesn't enter any text
for it. The code-level check is for an empty text string, rather than no mouse
drag.
-
Fix. The problem is that selecting any item in the Components
toolbar does not properly terminate text entry the way that clicking on an item
in the Drawing toolbar does. The fix should simply be a matter of seeing what
text-finalization code happens when Drawing toolbar items are pressed, and then
doing the same when components toolbar items are pressed.