Package net.java.games.input

Examples of net.java.games.input.Event


   * @see org.lwjgl.input.Controller#poll()
   */
  public void poll() {
    target.poll();

    Event event = new Event();
    EventQueue queue = target.getEventQueue();

    while (queue.getNextEvent(event)) {
      // handle button event
      if (buttons.contains(event.getComponent())) {
        Component button = event.getComponent();
        int buttonIndex = buttons.indexOf(button);
        buttonState[buttonIndex] = event.getValue() != 0;

        // fire button pressed event
        Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.BUTTON,buttonIndex,false,false));
      }

      // handle pov events
      if (pov.contains(event.getComponent())) {
        Component povComponent = event.getComponent();
        int povIndex = pov.indexOf(povComponent);
        float prevX = getPovX();
        float prevY = getPovY();
        povValues[povIndex] = event.getValue();

        if (prevX != getPovX()) {
          Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.POVX,0,false,false));
        }
        if (prevY != getPovY()) {
          Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.POVY,0,false,false));
        }
      }

      // handle axis updates
      if (axes.contains(event.getComponent())) {
        Component axis = event.getComponent();
        int axisIndex = axes.indexOf(axis);
        float value = axis.getPollData();

        // fixed dead zone since most axis don't report it :(
        if (Math.abs(value) < deadZones[axisIndex]) {
          value = 0;
        }
        if (Math.abs(value) < axis.getDeadZone()) {
          value = 0;
        }
        if (Math.abs(value) > axesMax[axisIndex]) {
          axesMax[axisIndex] = Math.abs(value);
        }

        // normalize the value based on maximum value read in the past
        value /= axesMax[axisIndex];
        // fire event
        Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.AXIS,axisIndex,
                             axisIndex == xaxis,axisIndex == yaxis));
        axesValue[axisIndex] = value;
      }
    }
  }
View Full Code Here


   * @see org.lwjgl.input.Controller#poll()
   */
  public void poll() {
    target.poll();

    Event event = new Event();
    EventQueue queue = target.getEventQueue();

    while (queue.getNextEvent(event)) {
      // handle button event
      if (buttons.contains(event.getComponent())) {
        Component button = event.getComponent();
        int buttonIndex = buttons.indexOf(button);
        buttonState[buttonIndex] = event.getValue() != 0;

        // fire button pressed event
        Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.BUTTON,buttonIndex,false,false));
      }

      // handle pov events
      if (pov.contains(event.getComponent())) {
        Component povComponent = event.getComponent();
        int povIndex = pov.indexOf(povComponent);
        float prevX = getPovX();
        float prevY = getPovY();
        povValues[povIndex] = event.getValue();

        if (prevX != getPovX()) {
          Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.POVX,0,false,false));
        }
        if (prevY != getPovY()) {
          Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.POVY,0,false,false));
        }
      }

      // handle axis updates
      if (axes.contains(event.getComponent())) {
        Component axis = event.getComponent();
        int axisIndex = axes.indexOf(axis);
        float value = axis.getPollData();

        // fixed dead zone since most axis don't report it :(
        if (Math.abs(value) < deadZones[axisIndex]) {
          value = 0;
        }
        if (Math.abs(value) < axis.getDeadZone()) {
          value = 0;
        }
        if (Math.abs(value) > axesMax[axisIndex]) {
          axesMax[axisIndex] = Math.abs(value);
        }

        // normalize the value based on maximum value read in the past
        value /= axesMax[axisIndex];
        // fire event
        Controllers.addEvent(new ControllerEvent(this,event.getNanos(),ControllerEvent.AXIS,axisIndex,
                             axisIndex == xaxis,axisIndex == yaxis));
        axesValue[axisIndex] = value;
      }
    }
  }
View Full Code Here

TOP

Related Classes of net.java.games.input.Event

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.