GGMouseEvent.mesa
Last edited by Bier on April 9, 1987 5:42:14 pm PDT
Contents: Once an event reaches the front of the slack-process queue, it is dispatched to one of the procedures in this module.
Pier, May 5, 1987 6:51:48 pm PDT
Kurlander July 13, 1986 3:09:20 pm PDT
DIRECTORY
GGBasicTypes, GGModelTypes, GGInterfaceTypes, Rope;
GGMouseEvent: CEDAR DEFINITIONS = BEGIN
GGData: TYPE = GGInterfaceTypes.GGData;
Point: TYPE = GGBasicTypes.Point;
SelectMode: TYPE = GGModelTypes.SelectMode;
FeatureData: TYPE = GGInterfaceTypes.FeatureData;
MouseProc: TYPE = PROC [input: LIST OF REF ANY, ggData: GGData, worldPt: Point];
StartProc: TYPE = PROC [input: LIST OF REF ANY, ggData: GGData, worldPt: Point] RETURNS [success: BOOLTRUE];
SelectFeedbackProc: TYPE = PROC [feature: FeatureData, caretPt: Point, ggData: GGData];
InitializeFSM: PROC [ggData: GGData];
ResetMouseMachinery: PROC [ggData: GGData];
Called as part of Reviving Gargoyle after an ERROR window must be aborted. Restores the GGMouseEvent invariants.
HandleMouse: PROC [clientData: REF ANY, event: LIST OF REF ANY];
HandleMouseless: PROC [clientData: REF ANY, event: LIST OF REF ANY];
In GGMouseEventImplA.StartCaretPos
StartCaretPos: StartProc;
DuringCaretPos: MouseProc;
EndCaretPos: MouseProc;
StartSelectJoint: StartProc;
StartSelectSegment: StartProc;
StartSelectTrajectory: StartProc;
StartSelectTopLevel: StartProc;
DuringSelect: MouseProc;
EndSelect: MouseProc;
StartDeselectJoint: StartProc;
StartDeselectSegment: StartProc;
StartDeselectTrajectory: StartProc;
StartDeselectTopLevel: StartProc;
DuringDeselect: MouseProc;
EndDeselect: MouseProc;
StartExtendSelectJoint: StartProc;
StartExtendSelectSegment: StartProc;
StartExtendSelectTraj: StartProc;
StartExtendSelectTopLevel: StartProc;
StartExtendSelection: StartProc;
DuringExtendSelection: MouseProc;
EndExtendSelection: MouseProc;
CopySelected: StartProc;
In GGMouseEventImplA.StartDrag
StartDrag: StartProc;
DuringDrag: MouseProc;
EndMotion: MouseProc;
StartRotate: StartProc;
DuringRotate: MouseProc;
StartScale: StartProc;
DuringScale: MouseProc;
StartAdd: StartProc;
DuringAdd: MouseProc;
EndAdd: MouseProc;
StartBox: StartProc;
EndBox: MouseProc;
StartCircle: StartProc;
EndCircle: MouseProc;
Private Procedures for GGMouseEventImpl* communication.
In GGMouseEventImplA.SelectJoint
SelectJointOrCP: SelectFeedbackProc;
SelectSegment: SelectFeedbackProc;
SelectTraj: SelectFeedbackProc;
SelectTopLevel: SelectFeedbackProc;
In GGMouseEventImplB.SetCaretAttractorEndpoint
SetCaretAttractorEndpoint: PROC [ggData: GGData, mapPoint: Point, feature: FeatureData, hitData: REF ANY];
DescribeSelectionAction: PROC [ggData: GGData, feature: FeatureData, hitData: REF ANY, selectMode: SelectMode, action: Rope.ROPE];
END.