hedgewars/uInputHandler.pas
changeset 6992 b8f3d8991e92
parent 6982 8d41d22a291d
child 6994 28805595b9ec
equal deleted inserted replaced
6991:1ec44dde5eb9 6992:b8f3d8991e92
    26 procedure freeModule;
    26 procedure freeModule;
    27 
    27 
    28 function  KeyNameToCode(name: shortstring): word;
    28 function  KeyNameToCode(name: shortstring): word;
    29 procedure ProcessKbd;
    29 procedure ProcessKbd;
    30 procedure ProcessMouse(event: TSDL_MouseButtonEvent; ButtonDown: boolean);
    30 procedure ProcessMouse(event: TSDL_MouseButtonEvent; ButtonDown: boolean);
    31 procedure ProcessKey(event: TSDL_KeyboardEvent);
    31 procedure ProcessKey(event: TSDL_KeyboardEvent); inline;
       
    32 procedure ProcessKey(code: LongInt; KeyDown: boolean);
       
    33 
    32 procedure ResetKbd;
    34 procedure ResetKbd;
    33 procedure FreezeEnterKey;
    35 procedure FreezeEnterKey;
    34 procedure InitKbdKeyTable;
    36 procedure InitKbdKeyTable;
    35 
    37 
    36 procedure SetBinds(var binds: TBinds);
    38 procedure SetBinds(var binds: TBinds);
    58     while (code > 0) and (KeyNames[code] <> name) do dec(code);
    60     while (code > 0) and (KeyNames[code] <> name) do dec(code);
    59     KeyNameToCode:= code;
    61     KeyNameToCode:= code;
    60 end;
    62 end;
    61 
    63 
    62 procedure ProcessKbd;
    64 procedure ProcessKbd;
    63 var  i, j, k: LongInt;
    65 //var  i, j, k: LongInt;
    64      s: shortstring;
       
    65      Trusted: boolean;
       
    66      pkbd: PByteArray;
       
    67 begin
    66 begin
    68 
    67 
    69 // move cursor/camera
    68 // move cursor/camera
    70 // TODO: Scale on screen dimensions and/or axis value (game controller)?
    69 // TODO: Scale on screen dimensions and/or axis value (game controller)?
    71 //TODO what is this for?
    70 //TODO what is this for?
    72 movecursor(5 * CursorMovementX, 5 * CursorMovementY);
    71 movecursor(5 * CursorMovementX, 5 * CursorMovementY);
    73 
    72 
    74 
    73 
    75 {$IFNDEF MOBILE}
       
    76 
       
    77 //TODO reimplement
    74 //TODO reimplement
       
    75 {$IFDEF 0}
    78 // Controller(s)
    76 // Controller(s)
    79 k:= j; // should we test k for hitting the limit? sounds rather unlikely to ever reach it
    77 k:= j; // should we test k for hitting the limit? sounds rather unlikely to ever reach it
    80 for j:= 0 to Pred(ControllerNumControllers) do
    78 for j:= 0 to Pred(ControllerNumControllers) do
    81     begin
    79     begin
    82     for i:= 0 to Pred(ControllerNumAxes[j]) do
    80     for i:= 0 to Pred(ControllerNumAxes[j]) do
   153     tkbd[code]:= tkbdn[code]
   151     tkbd[code]:= tkbdn[code]
   154     end
   152     end
   155 
   153 
   156 end;
   154 end;
   157 
   155 
   158 procedure ProcessKey(event: TSDL_KeyboardEvent); 
   156 procedure ProcessKey(event: TSDL_KeyboardEvent); inline;
   159 begin
   157 begin
   160     ProcessKey(event.keysym.sym, event.type_ = SDL_KEYDOWN);
   158     ProcessKey(event.keysym.sym, event.type_ = SDL_KEYDOWN);
   161 end;
   159 end;
   162 
   160 
   163 procedure ProcessMouse(event: TSDL_MouseButtonEvent; ButtonDown: boolean);
   161 procedure ProcessMouse(event: TSDL_MouseButtonEvent; ButtonDown: boolean);