Gargoyle.tip
last written by Bier, January 29, 1987 10:56:46 am PST
Pier, November 7, 1986 5:41:56 pm PST
Kurlander August 24, 1986 12:39:42 pm PDT
OPTIONS
PrintKeys;
[DEF,SHIFT,(RightShift Down | LeftShift Down)]
[DEF,CTRL,Ctrl Down]
[DEF,LOOK,BW Down]
[DEF,META,Spare3 Down]
[DEF,ClickTime,(200)]
[DEF,DownClick,(~1 Down BEFORE [ClickTime])]
[DEF,UpClick,(~1 Up BEFORE [ClickTime])]
[DEF,DoubleClick,([UpClick,~1] AND [DownClick,~1])]
[DEF,BothUp,(~1 Up WHILE ~2 Up)]
[DEF,IfShift,(SELECT ENABLE FROM
[SHIFT] => ~1;
ENDCASE => ~2)]
[DEF,IfCtrl,(SELECT ENABLE FROM
[CTRL] => ~1;
ENDCASE => ~2)]
[DEF,SHIFTUp,[BothUp,LeftShift,RightShift]]
[DEF,CTRLUp,(Ctrl Up)]
[DEF,METAUp,(Spare3 Up)]
[DEF,WhenSHIFTUp,(
LeftShift Up WHILE RightShift Up ~1 => ~2;
RightShift Up WHILE LeftShift Up ~1 => ~2)]
[DEF,WhenCTRLUp,(
Ctrl Up ~1 => ~2)]
[DEF,WhenSpare3Up,(
Spare3 Up ~1 => ~2)]
[DEF,WhileCTRLUp,(WHILE Ctrl Up)]
[DEF,WhileSpare3Up,(WHILE Spare3 Up)]
[DEF,WhileThreeUp,
(WHILE ~1 Up WHILE ~2 Up WHILE ~3 Up)]
[DEF,ButtonUp,(SELECT ENABLE FROM
[SHIFTUp] [WhileCTRLUp] WHILE [BothUp,~1,~2] => SELECT ENABLE FROM
ESC Down => DoEdit;
ENDCASE => DoIt;
ENDCASE)]
SELECT TRIGGER FROM
Mouse Motions
[DEF,SingleRed,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => { Coords StartDeselectJoint };
ENDCASE => { Coords StartCaretPos };
[CTRL] => { Coords StartDrag };
[META] => { Coords StartExtSelectJoint };
ENDCASE => { Coords StartSelectJoint })]
[DEF,DoubleRed,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => { Coords StartDeselectTopLevel};
ENDCASE => NoOp;
[CTRL] => { Coords StartCopyAndDrag };
[META] => { Coords StartExtSelectTopLevel };
ENDCASE => { Coords StartSelectTopLevel })]
Red Down => SELECT TRIGGER FROM
[DoubleClick,Red] => [DoubleRed];
ENDCASE => [SingleRed];
Mouse WHILE Red Down => {Coords During};
Red Up WHILE Yellow Up WHILE Blue Up => SELECT ENABLE FROM
[SHIFTUp] => SELECT ENABLE FROM
[CTRLUp] => SELECT ENABLE FROM
[METAUp]=> {Coords AllUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
[DEF,SingleYellow,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => {Coords StartDeselectSegment};
ENDCASE => { Coords StartAdd };
[CTRL] => { Coords StartRotate };
[META] => { Coords StartExtSelectSegment };
ENDCASE => { Coords StartSelectSegment })]
[DEF,DoubleYellow,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => { Coords StartDeselectTrajectory };
ENDCASE => NoOp;
[CTRL] => NoOp;
[META] => { Coords StartExtSelectTrajectory };
ENDCASE => { Coords StartSelectTrajectory })]
Yellow Down => SELECT ENABLE FROM
[CTRL] => SELECT TRIGGER FROM
[DoubleClick,Yellow] => [DoubleYellow];
ENDCASE => [SingleYellow];
[SHIFT] => [SingleYellow];
ENDCASE => SELECT TRIGGER FROM
[DoubleClick,Yellow] => [DoubleYellow];
ENDCASE => [SingleYellow];
Mouse WHILE Yellow Down => {Coords During};
Yellow Up WHILE Red Up WHILE Blue Up => SELECT ENABLE FROM
[SHIFTUp] => SELECT ENABLE FROM
[CTRLUp] => SELECT ENABLE FROM
[METAUp]=> {Coords AllUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
[DEF,SingleBlue,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => { Coords StartExtendDeselect };
ENDCASE => {Coords StartBox};
[CTRL] => { Coords StartScale };
ENDCASE => { Coords StartExtendSelection })]
[DEF,DoubleBlue,(SELECT ENABLE FROM
[SHIFT] => SELECT ENABLE FROM
[CTRL] => NoOp;
ENDCASE => NoOp;
[CTRL] => { Coords StartSixPoint };
ENDCASE => { Coords StartSelectWithBox })]
Blue Down => SELECT TRIGGER FROM
[DoubleClick,Blue] => [DoubleBlue];
ENDCASE => [SingleBlue];
Mouse WHILE Blue Down => {Coords During};
Blue Up WHILE Red Up WHILE Yellow Up => SELECT ENABLE FROM
[SHIFTUp] => SELECT ENABLE FROM
[CTRLUp] => SELECT ENABLE FROM
[METAUp]=> {Coords AllUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
ENDCASE => {Coords MouseUp};
Guard key Motions
[WhenSHIFTUp,[WhileThreeUp,Red,Yellow,Blue] [WhileCTRLUp] [WhileSpare3Up],{Coords AllUp}];
[WhenCTRLUp,[WhileThreeUp,Red,Yellow,Blue] WHILE [SHIFTUp] [WhileSpare3Up],{Coords AllUp}];
[WhenSpare3Up,[WhileThreeUp,Red,Yellow,Blue] WHILE [SHIFTUp] [WhileCTRLUp],{Coords AllUp}];
[WhenSHIFTUp,[WhileCTRLUp] [WhileSpare3Up],{Coords GuardUp}];
[WhenCTRLUp,WHILE [SHIFTUp] [WhileSpare3Up],{Coords GuardUp}];
[WhenSpare3Up,WHILE [SHIFTUp] [WhileCTRLUp],{Coords GuardUp}];
Number Commands
Zero Down => SELECT ENABLE FROM
BW Down => {LineWidth "0.0"};
ENDCASE;
One Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => ReloadTipTable;
ENDCASE;
[LOOK] => {LineWidth "1.0"};
ENDCASE;
Two Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "2.0"};
ENDCASE;
Three Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "3.0"};
ENDCASE;
Four Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "4.0"};
ENDCASE;
Five Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "5.0"};
ENDCASE;
Six Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "6.0"};
ENDCASE;
Seven Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "7.0"};
ENDCASE;
Eight Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "8.0"};
ENDCASE;
Nine Down => SELECT ENABLE FROM
[LOOK] => {LineWidth "9.0"};
ENDCASE;
Letter Commands
Space Down => SELECT ENABLE FROM
[CTRL] => ToggleGravity;
[SHIFT] => ToggleGravity;
ENDCASE;
A Down => SELECT ENABLE FROM
[LOOK] => SetArc;
[CTRL] => SELECT ENABLE FROM
[SHIFT] => LiftAnchor;
ENDCASE => DropAnchor;
ENDCASE;
B Down => SELECT ENABLE FROM
[LOOK] => SetBSpline;
[CTRL] => SELECT ENABLE FROM
[SHIFT] => NoOp;
ENDCASE => ToggleShowColors;
ENDCASE;
C Down => SELECT ENABLE FROM
[LOOK] => SetConic;
[CTRL] => SELECT ENABLE FROM
[SHIFT] => NoOp;
ENDCASE => Close;
ENDCASE;
D Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => NoOp;
ENDCASE => SelectAll;
ENDCASE;
G Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => {GravityChoiceChange FlipBackward};
ENDCASE => {GravityChoiceChange FlipForward};
ENDCASE;
H Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => NoOp;
ENDCASE => AddHoles;
ENDCASE;
J Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => NoOp;
ENDCASE => AddJoint;
ENDCASE;
L Down => SELECT ENABLE FROM
[LOOK] => SetStraight;
ENDCASE;
N Down => SELECT ENABLE FROM
[LOOK] => SetNaturalSpline;
ENDCASE;
P Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => DeleteControlPoint;
ENDCASE => AddControlPoint;
ENDCASE;
Q Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => {AllAlignmentsOff};
ENDCASE => {ToggleAlignments};
ENDCASE;
S Down => SELECT ENABLE FROM
[LOOK] => SetSnowflake;
[CTRL] => SELECT TRIGGER FROM
[DoubleClick,S] => SELECT ENABLE FROM
[SHIFT] => MakeAllCold;
ENDCASE => MakeAllHot;
ENDCASE => SELECT ENABLE FROM
[SHIFT] => MakeCold;
ENDCASE => MakeHot;
ENDCASE;
W Down => SELECT ENABLE FROM
[CTRL] => SELECT ENABLE FROM
[SHIFT] => {Weld};
ENDCASE => {Weld};
ENDCASE;
Z Down => SELECT ENABLE FROM
[LOOK] => SetBezier;
ENDCASE;
Special Keys
DEL Down => SELECT ENABLE FROM
[SHIFT] => Abort;
[CTRL] => Abort;
[META] => Abort;
Red Down => Abort;
Yellow Down => Abort;
Blue Down => Abort;
ENDCASE => Delete;
ESC Down => SELECT ENABLE FROM
[CTRL] => IPSnapShot;
[SHIFT] => IPSnapShot;
ENDCASE => ToIPLit;
BS Down => SELECT ENABLE FROM
[CTRL] => DeleteCaretSegment;
[SHIFT] => DeleteCaretSegment;
ENDCASE;
Return Down => {Close};
ENDCASE.