hedgewars/uTouch.pas
changeset 6687 98be933770e0
parent 6685 ef706fccfb0a
child 6693 b6a69c0bc541
equal deleted inserted replaced
6686:bdb7c67eba06 6687:98be933770e0
   222 y := y;
   222 y := y;
   223 aiming:= false;
   223 aiming:= false;
   224 stopFiring:= true;
   224 stopFiring:= true;
   225 finger:= updateFinger(x,y,0,0,pointerId);
   225 finger:= updateFinger(x,y,0,0,pointerId);
   226 //Check for onTouchClick event
   226 //Check for onTouchClick event
   227 if ((SDL_GetTicks - finger^.timeSinceDown) < clickTime) AND not(fingerHasMoved(finger^)) then
   227 if ((RealTicks - finger^.timeSinceDown) < clickTime) AND not(fingerHasMoved(finger^)) then
   228     onTouchClick(finger^);
   228     onTouchClick(finger^);
   229 
   229 
   230 deleteFinger(pointerId);
   230 deleteFinger(pointerId);
   231 
   231 
   232 if walkingLeft then
   232 if walkingLeft then
   258 finger := finger;//avoid compiler hint
   258 finger := finger;//avoid compiler hint
   259 end;
   259 end;
   260 
   260 
   261 procedure onTouchClick(finger: Touch_Finger);
   261 procedure onTouchClick(finger: Touch_Finger);
   262 begin
   262 begin
   263 if (SDL_GetTicks - timeSinceClick < 300) and (DistanceI(finger.X-xTouchClick, finger.Y-yTouchClick) < _30) then
   263 if (RealTicks - timeSinceClick < 300) and (DistanceI(finger.X-xTouchClick, finger.Y-yTouchClick) < _30) then
   264     begin
   264     begin
   265     onTouchDoubleClick(finger);
   265     onTouchDoubleClick(finger);
   266     timeSinceClick:= 0;//we make an assumption there won't be an 'click' in the first 300 ticks(milliseconds) 
   266     timeSinceClick:= 0;//we make an assumption there won't be an 'click' in the first 300 ticks(milliseconds) 
   267     exit; 
   267     exit; 
   268     end;
   268     end;
   269 
   269 
   270 xTouchClick:= finger.x;
   270 xTouchClick:= finger.x;
   271 yTouchClick:= finger.y;
   271 yTouchClick:= finger.y;
   272 timeSinceClick:= SDL_GetTicks;
   272 timeSinceClick:= RealTicks;
   273 
   273 
   274 if bShowAmmoMenu then
   274 if bShowAmmoMenu then
   275     begin 
   275     begin 
   276     if isOnRect(AmmoRect, finger) then
   276     if isOnRect(AmmoRect, finger) then
   277         begin
   277         begin
   315     fingers[pointerCount].historicalY := yCursor;
   315     fingers[pointerCount].historicalY := yCursor;
   316     fingers[pointerCount].x := xCursor;
   316     fingers[pointerCount].x := xCursor;
   317     fingers[pointerCount].y := yCursor;
   317     fingers[pointerCount].y := yCursor;
   318     fingers[pointerCount].dx := 0;
   318     fingers[pointerCount].dx := 0;
   319     fingers[pointerCount].dy := 0;
   319     fingers[pointerCount].dy := 0;
   320     fingers[pointerCount].timeSinceDown:= SDL_GetTicks;
   320     fingers[pointerCount].timeSinceDown:= RealTicks;
   321  
   321  
   322     addFinger:= @fingers[pointerCount];
   322     addFinger:= @fingers[pointerCount];
   323     inc(pointerCount);
   323     inc(pointerCount);
   324 end;
   324 end;
   325 
   325