From: Richard K. <ric...@us...> - 2005-07-14 21:56:51
|
Update of /cvsroot/actionstep/actionstep/src/org/actionstep In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26645 Modified Files: ASEventMonitor.as Log Message: beginning of key events and change the way event times are set Index: ASEventMonitor.as =================================================================== RCS file: /cvsroot/actionstep/actionstep/src/org/actionstep/ASEventMonitor.as,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** ASEventMonitor.as 29 Jun 2005 06:57:47 -0000 1.15 --- ASEventMonitor.as 14 Jul 2005 21:56:42 -0000 1.16 *************** *** 49,52 **** --- 49,56 ---- private var m_lastMouseDownEvent:NSEvent; + private var m_keyTracker:Object; + + private var m_timeOffset:Number; + public static function instance():ASEventMonitor { if (g_instance == null) { *************** *** 78,81 **** --- 82,86 ---- if (m_index == 1) m_index = 0; m_lastMouseDownTime = 0; + m_timeOffset = (new Date()).getTime() - getTimer(); } *************** *** 99,104 **** } ! private function trackKeyboardEvents() { ! //! Track keyboard events... } --- 104,141 ---- } ! public function trackKeyboardEvents() { ! if (m_keyTracker != null) { //Already tracking ! return; ! } ! var self = this; ! m_keyTracker = new Object(); ! m_keyTracker.onKeyDown = function() { ! self.keyDown(); ! } ! m_keyTracker.onKeyUp = function() { ! self.keyUp(); ! } ! Key.addListener(m_keyTracker); ! } ! ! private var m_lastKeyDown:Number; ! ! private function keyDown() { ! var event = NSEvent.keyEventWithType(NSEvent.NSKeyDown, new NSPoint(_root._xmouse, _root._ymouse), ! buildModifierFlags(), m_timeOffset+getTimer(), null /* window */, null /*contact*/, String.fromCharCode(Key.getAscii()), ! String.fromCharCode(Key.getAscii()), (m_lastKeyDown == Key.getCode()), Key.getCode()); ! m_lastKeyDown = Key.getCode(); ! m_app.sendEvent(event); ! } ! ! private function keyUp() { ! if (m_lastKeyDown == Key.getCode) { ! m_lastKeyDown = 0; ! } ! var event = NSEvent.keyEventWithType(NSEvent.NSKeyUp, new NSPoint(_root._xmouse, _root._ymouse), ! buildModifierFlags(), m_timeOffset+getTimer(), null /* window */, null /*contact*/, String.fromCharCode(Key.getAscii()), ! String.fromCharCode(Key.getAscii()), (m_lastKeyDown == Key.getCode()), Key.getCode()); ! m_lastKeyDown = Key.getCode(); ! m_app.sendEvent(event); } *************** *** 106,110 **** var modifierFlags = buildModifierFlags(); var event = NSEvent.otherEventWithType(NSEvent.NSPeriodic, new NSPoint(_root._xmouse, _root._ymouse), ! modifierFlags, (new Date()).getTime(), eval(m_mouseTrackingClip._dropTarget).view, null /* context*/, 0 /*subType */, null /*data1 */, null /*data 2*/); m_app.sendEvent(event); --- 143,147 ---- var modifierFlags = buildModifierFlags(); var event = NSEvent.otherEventWithType(NSEvent.NSPeriodic, new NSPoint(_root._xmouse, _root._ymouse), ! modifierFlags, m_timeOffset+getTimer(), eval(m_mouseTrackingClip._dropTarget).view, null /* context*/, 0 /*subType */, null /*data1 */, null /*data 2*/); m_app.sendEvent(event); *************** *** 131,135 **** m_lastMouseDownEvent = NSEvent.mouseEventWithType(NSEvent.NSLeftMouseDown, new NSPoint(x, y), ! modifierFlags, (new Date()).getTime(), eval(targetPath).view, null /* context */, m_eventCounter++, 1 /*click count*/, 0).memberwiseClone(); m_lastMouseDownTime = getTimer(); --- 168,172 ---- m_lastMouseDownEvent = NSEvent.mouseEventWithType(NSEvent.NSLeftMouseDown, new NSPoint(x, y), ! modifierFlags, m_timeOffset+getTimer(), eval(targetPath).view, null /* context */, m_eventCounter++, 1 /*click count*/, 0).memberwiseClone(); m_lastMouseDownTime = getTimer(); *************** *** 144,148 **** var event = NSEvent.mouseEventWithType(NSEvent.NSLeftMouseUp, new NSPoint(_root._xmouse, _root._ymouse), ! modifierFlags, (new Date()).getTime(), eval(targetPath).view, null /* context */, m_eventCounter++, 1 /*click count*/, 0); m_app.sendEvent(event); --- 181,185 ---- var event = NSEvent.mouseEventWithType(NSEvent.NSLeftMouseUp, new NSPoint(_root._xmouse, _root._ymouse), ! modifierFlags, m_timeOffset+getTimer(), eval(targetPath).view, null /* context */, m_eventCounter++, 1 /*click count*/, 0); m_app.sendEvent(event); *************** *** 158,162 **** if (m_currentMouseTargetPath != "") { event = NSEvent.enterExitEventType(NSEvent.NSMouseExited, new NSPoint(_root._xmouse, _root._ymouse), ! 0 /*modifierFlags:Number*/, (new Date()).getTime(), eval(m_currentMouseTargetPath).view, null /* context */, m_eventCounter++, 0/*trackingNumber:Number*/, null/*userData:Object*/); m_app.sendEvent(event); --- 195,199 ---- if (m_currentMouseTargetPath != "") { event = NSEvent.enterExitEventType(NSEvent.NSMouseExited, new NSPoint(_root._xmouse, _root._ymouse), ! buildModifierFlags() , m_timeOffset+getTimer(), eval(m_currentMouseTargetPath).view, null /* context */, m_eventCounter++, 0/*trackingNumber:Number*/, null/*userData:Object*/); m_app.sendEvent(event); *************** *** 165,169 **** if (m_currentMouseTargetPath != "") { event = NSEvent.enterExitEventType(NSEvent.NSMouseEntered, new NSPoint(_root._xmouse, _root._ymouse), ! 0 /*modifierFlags:Number*/, (new Date()).getTime(), eval(targetPath).view, null /* context */, m_eventCounter++, 0/*trackingNumber:Number*/, null/*userData:Object*/); m_app.sendEvent(event); --- 202,206 ---- if (m_currentMouseTargetPath != "") { event = NSEvent.enterExitEventType(NSEvent.NSMouseEntered, new NSPoint(_root._xmouse, _root._ymouse), ! buildModifierFlags() , m_timeOffset+getTimer(), eval(targetPath).view, null /* context */, m_eventCounter++, 0/*trackingNumber:Number*/, null/*userData:Object*/); m_app.sendEvent(event); *************** *** 171,175 **** } event = NSEvent.mouseEventWithType(NSEvent.NSMouseMoved, new NSPoint(_root._xmouse, _root._ymouse), ! 0 /*modifierFlags:Number*/, (new Date()).getTime(), eval(targetPath).view, null /* context */, m_eventCounter++, 0/*clickCount:Number*/, 0/*pressure:Number*/); m_app.sendEvent(event); --- 208,212 ---- } event = NSEvent.mouseEventWithType(NSEvent.NSMouseMoved, new NSPoint(_root._xmouse, _root._ymouse), ! buildModifierFlags(), m_timeOffset+getTimer(), eval(targetPath).view, null /* context */, m_eventCounter++, 0/*clickCount:Number*/, 0/*pressure:Number*/); m_app.sendEvent(event); |