GGToDo.tioga
Last edited by Bier on July 12, 1985 1:09:16 pm PDT
Day by day implementation needs of Gargoyle.
High Priority
Delete for sequences.
Surpress the appearance of joints and carets in interpress files.
Disallow dragging objects to trigger alignment lines.
Splice in a new joint.
Easy
Middle Button initializes gravity extent.
Rectangles in a button push.
Use the color tool.
Prettier Anchors.
Record the touching relationship when segment touches segment.
Pass a hint to the ClosestPointProc (SegmentClass) so it can quickly rule itself out.
Keep statistics about how much time refresh takes.
Low Priority
The elusive bug where an invisible vertical line becomes gravity sensitive.
Single-point trajectories.
Select Trajectory should work even if gravity is turned off.
Closing Trajectories. Check to see if the endpoints are already touching.
Compute the intersection of alignment lines with trajectories (i.e. all Segment Classes).
Colinear line alignment lines.
Segment Bisector alignment points.
Rotate-Drag operation (combines both).
Make the session log serve as a file format.
Implement Copy.
Implement priority ordering.
Trajectories prefered to direction lines during alignment.
Selection Modes. (e.g. what level do you extend to).
Bounding Boxes. Use bounding boxes more often for refresh and hit test.
Objects with holes.
Make regular polygons available as primitives.
Absolute Coordinates as alignment triggers.
Distinguish between Deselect where not selected is an ERROR, and EnsureNotSelected, where it is OK.
Write GGObjectsImpl.ClosedCombineSequences (like OpenCombineSequences).
Delete Slope/Delete Radius. -- Remove a Slope/Radius button.
Very Low Priority
Remove the compilation dependencies on gargoyleData.hitTest.environ.
Release as general package: GGDrawProcess (change name to SlackProcess).
Release as general package: The TwoState Buttons in GGUtilityImpl.
Release as general package: The Graphics Buttons in GGGraphicsButton.
Put Off Until Eric Gets Back
Implement Rotational Alignments (Gravity on angles) This may not be necessary at all.
Implement a new kind of selection called "Active" selection where Active objects serve as symmetry tools.
Done:
Make a debugging typescript.
Patch selection mechanism.
Implement Translational alignments for dragging objects.
Implement a new kind of selection called "Hot" selection, where Hot objects trigger alignment lines.
Fix "Already on Overlay" bug.
Fix the Refresh problems caused by alignment lines.
TestGravity should show alignment lines.
During dragging, alignment classes should be reported.
Implement ShowPoints/HidePoints (and fix joint display in general)
Deleting an object must remove it from its touching constraints.
Remove objects from the Hot List when they are deleted (be careful with sequences). (I think I did this.)
Circle intersection bug. Done: August 19, 1985
Slopes from Scene/Numbers. Let the user add a slope of interest by pointing to a segment. Done: August 19, 1985
Radius from Scene. Done: August 19, 1985
Scaling. Done: August 19, 1985
Merge Groups. Implement this routine in GGTouch. Done: August 19, 1985
* Write User's Manual. Done: August 20, 1985
* Fix session log to playback REALs and NATs. Done: August 20, 1985
* Turn refresh off (for impatient users). Especially useful for SessionLog Playback. Done: August 21, 1985
Joints Hidden by default. Done: August 20, 1985
TIP Table Menu (make a pop up menu which displays the TIP table as a form of on-line documentation). Done: August 19, 1985
seq.parts.rest in GGSelect.SelectSequence. Done: August 21, 1985 5:42:50 pm PDT
Extracurricular for Eric: Solidviews Videotape, Modem.