pl.tph.javatacka.input
Class InputManager

java.lang.Object
  extended by pl.tph.javatacka.input.InputManager
All Implemented Interfaces:
java.awt.event.KeyListener, java.awt.event.MouseListener, java.util.EventListener

public class InputManager
extends java.lang.Object
implements java.awt.event.KeyListener, java.awt.event.MouseListener

Klasa InputManager służy do zarządzania zdarzeniami związanymi z wejściem klawiatury i myszy (wciskanie i zwalnianie klawiszy/przycisków). Wykorzystuje ona obiekty klasy VirtualKey do informowania innych obiektów o zaistniałych zdarzeniach.

Author:
Tomasz Pieczerak (tph)
See Also:
VirtualKey

Field Summary
private static java.awt.Cursor INVISIBLE_CURSOR
          Niewidzialny kursor myszy.
private  java.util.Map<java.lang.Integer,VirtualKey> keyActions
          Mapa zawierająca pary powiązanych ze sobą kodów klawiszy klawiatury i obiektów akcji gry VirtualKey.
static int MOUSE_BUTTON_1
          Kod lewego klawisza myszy.
static int MOUSE_BUTTON_2
          Kod środkowego klawisza myszy
static int MOUSE_BUTTON_3
          Kod prawego klawisza myszy.
private  VirtualKey[] mouseActions
          Tabela zawierająca obiekty akcji gry VirtualKey związane z przyciskami myszy.
 
Constructor Summary
InputManager(java.awt.Component comp)
          Tworzy nowy obiekt klasy InputManager, który będzie nasłuchiwał zdarzeń przekazywanych pod podanego komponentu.
 
Method Summary
private  VirtualKey getKeyAction(java.awt.event.KeyEvent e)
          Zwraca obiekt akcji gry VirtualKey związany z klawiszem, od którego przyszło zdarzenie.
private  VirtualKey getMouseButtonAction(java.awt.event.MouseEvent e)
          Zwraca obiekt akcji gry VirtualKey związany z przyciskiem myszy, od którego przyszło zdarzenie.
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void mapToKey(VirtualKey virtualKey, int keyCode)
          Mapuje wskazany obiekt VirtualKey na wybrany klawisz (z klawiatury).
 void mapToMouse(VirtualKey virtualKey, int mouseCode)
          Mapuje wskazany obiekt VirtualKey na wybrany przycisk myszy.
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MOUSE_BUTTON_1

public static final int MOUSE_BUTTON_1
Kod lewego klawisza myszy.

See Also:
Constant Field Values

MOUSE_BUTTON_2

public static final int MOUSE_BUTTON_2
Kod środkowego klawisza myszy

See Also:
Constant Field Values

MOUSE_BUTTON_3

public static final int MOUSE_BUTTON_3
Kod prawego klawisza myszy.

See Also:
Constant Field Values

INVISIBLE_CURSOR

private static final java.awt.Cursor INVISIBLE_CURSOR
Niewidzialny kursor myszy. Służy do ukrywania kursora na ekranie.


keyActions

private java.util.Map<java.lang.Integer,VirtualKey> keyActions
Mapa zawierająca pary powiązanych ze sobą kodów klawiszy klawiatury i obiektów akcji gry VirtualKey.


mouseActions

private VirtualKey[] mouseActions
Tabela zawierająca obiekty akcji gry VirtualKey związane z przyciskami myszy.

See Also:
MOUSE_BUTTON_1, MOUSE_BUTTON_2, MOUSE_BUTTON_3
Constructor Detail

InputManager

public InputManager(java.awt.Component comp)
Tworzy nowy obiekt klasy InputManager, który będzie nasłuchiwał zdarzeń przekazywanych pod podanego komponentu.

Parameters:
comp - komponent, z którego zdarzenia będą obsługiwane
Method Detail

mapToKey

public void mapToKey(VirtualKey virtualKey,
                     int keyCode)
Mapuje wskazany obiekt VirtualKey na wybrany klawisz (z klawiatury).

Parameters:
virtualKey - obiekt reprezentujący wybraną akcję w grze
keyCode - kody klawisza
See Also:
VirtualKey

mapToMouse

public void mapToMouse(VirtualKey virtualKey,
                       int mouseCode)
Mapuje wskazany obiekt VirtualKey na wybrany przycisk myszy.

Parameters:
virtualKey - obiekt reprezentujący wybraną akcję w grze
mouseCode - kod klawisza myszy
See Also:
MOUSE_BUTTON_1, MOUSE_BUTTON_2, MOUSE_BUTTON_3

keyPressed

public void keyPressed(java.awt.event.KeyEvent e)
Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Specified by:
keyTyped in interface java.awt.event.KeyListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

getKeyAction

private VirtualKey getKeyAction(java.awt.event.KeyEvent e)
Zwraca obiekt akcji gry VirtualKey związany z klawiszem, od którego przyszło zdarzenie.

Parameters:
e - zdarzenie wciśnięcia/zwolnienia klawisza z klawiatury

getMouseButtonAction

private VirtualKey getMouseButtonAction(java.awt.event.MouseEvent e)
Zwraca obiekt akcji gry VirtualKey związany z przyciskiem myszy, od którego przyszło zdarzenie.

Parameters:
e - zdarzenie wciśnięcia/zwolnienia przycisku myszy