[Committed] Keyboard & Mouse Binding

cue Superman theme

It's a key binding!

It's a mouse binding!

It's a keyboard and mouse binding!!!

[hold for laughter]



That about sums it up…  just another implementation of the binding interface to support a different kind of control like Shift+click or something fancier



/*
* COPYRIGHT GOES HERE
*/
package com.jme.input.controls.binding;

import org.lwjgl.input.Keyboard;
import org.lwjgl.input.Mouse;

import com.jme.input.KeyInput;
import com.jme.input.MouseInput;
import com.jme.input.controls.Binding;

/**
* <code>KeyAndMouseButtonBinding</code> is akin to merging
* <code>KeyboardBinding</code> with <code>MouseButtonMinding</code>,
* allowing for a KeyboardButton + Mouse Button (i.e: "CTRL+Click")
* @author <a href="mailto:skye.book@gmail.com">Skye Book
*/
public class KeyAndMouseButtonBinding implements Binding {
   private static final long serialVersionUID = 1L;
   
   private int button;
   private int key;
   
   public KeyAndMouseButtonBinding(int key, int button) {
       this.button = button;
       this.key = key;
   }
   
public String getName() {
return "Mouse Button: " + Mouse.getButtonName(button) + "; Key: " + Keyboard.getKeyName(key);
}

public float getValue() {
return (MouseInput.get().isButtonDown(button) && KeyInput.get().isKeyDown(key)) ? 1.0f : 0.0f;
}

public String toString() {
return getName();
}
}