<> <> OPTIONS Fast, PrintKeys; <> [DEF,ClickTime,(200)] [DEF,DownClick,(~1 Down BEFORE [ClickTime])] [DEF,UpClick,(~1 Up BEFORE [ClickTime])] [DEF,Click,([UpClick,~1] AND [DownClick,~1])] [DEF,BothUp,(~1 Up WHILE ~2 Up)] [DEF,FourUp,(~1 Up WHILE ~2 Up WHILE ~3 Up WHILE ~4 Up)] [DEF,WhileSixUp, (WHILE ~1 Up WHILE ~2 Up WHILE ~3 Up WHILE ~4 Up WHILE ~5 Up WHILE ~6 Up)] [DEF,CTRL,(Ctrl Down | Spare3 Down)] [DEF,SHIFT,(LeftShift Down | RightShift Down)] [DEF,IfShift,(SELECT ENABLE FROM [SHIFT] => ~1; ENDCASE => ~2)] [DEF,IfCtrl,(SELECT ENABLE FROM [CTRL] => ~1; ENDCASE => ~2)] SELECT TRIGGER FROM -- top level trigger select <> [DEF,MouseClick,(SELECT ENABLE FROM [SHIFT] => SELECT ENABLE FROM [CTRL] => SELECT TRIGGER FROM [Click,~1] => { Double Shift Ctrl Coords ~2 }; ENDCASE => { Shift Ctrl Coords ~2 }; ENDCASE => SELECT TRIGGER FROM [Click,~1] => { Double Shift Coords ~2 }; ENDCASE => { Shift Coords ~2 }; ENDCASE => SELECT ENABLE FROM [CTRL] => SELECT TRIGGER FROM [Click,~1] => { Double Ctrl Coords ~2 }; ENDCASE => { Ctrl Coords ~2 }; ENDCASE => SELECT TRIGGER FROM [Click,~1] => { Double Coords ~2 }; ENDCASE => { Coords ~2 } )] Red Down => SELECT ENABLE FROM [BothUp,Yellow,Blue] => [MouseClick,Red,Press]; ENDCASE => { Abort }; Red Up => SELECT ENABLE FROM [BothUp,Yellow,Blue] => { Coords Release }; ENDCASE => { Abort }; Blue Down => SELECT ENABLE FROM [BothUp,Yellow,Red] => [MouseClick,Red,Right Press]; ENDCASE => { Abort }; Blue Up => SELECT ENABLE FROM [BothUp,Yellow,Red] => { Coords Release }; ENDCASE => { Abort }; Yellow Down => SELECT ENABLE FROM [BothUp,Red,Blue] => { Menu Ignore Ignore }; ENDCASE => { Abort }; Yellow Up => SELECT ENABLE FROM [BothUp,Blue,Red] => { Release }; ENDCASE => { Abort }; Mouse => SELECT ENABLE FROM Red Up WHILE Yellow Up WHILE Blue Up => { CheckAbort }; Red Down => { Coords Drag }; Blue Down => { Coords Drag }; ENDCASE; ENDCASE...