Files
moonlight-embedded/src/com/limelight/input/gamepad/GamepadComponent.java
2013-12-29 13:01:25 -05:00

46 lines
1.5 KiB
Java

package com.limelight.input.gamepad;
import java.io.Serializable;
import javax.swing.JLabel;
/**
* Enumerator for every gamepad component GFE recognizes
* @author Diego Waxemberg
*/
public enum GamepadComponent implements Serializable {
BTN_A("Button 1 (A)", false), BTN_X("Button 2 (X)", false), BTN_Y("Button 3 (Y)", false), BTN_B("Button 4 (B)", false),
DPAD_UP("D-pad Up", false), DPAD_DOWN("D-pad Down", false), DPAD_LEFT("D-pad Left", false), DPAD_RIGHT("D-pad Right", false),
LS_X("Left Stick X", true), LS_Y("Left Stick Y", true), RS_X("Right Stick X", true), RS_Y("Right Stick Y", true),
LS_THUMB("Left Stick Button", false), RS_THUMB("Right Stick Button", false),
LT("Left Trigger", true), RT("Right Trigger", true), LB("Left Bumper", false), RB("Right Bumper", false),
BTN_START("Start Button", false), BTN_BACK("Back Button", false), BTN_SPECIAL("Special Button", false);
private JLabel label;
private boolean analog;
/*
* Constructs the enumerator with the given name for a label and whether it is analog or not
*/
private GamepadComponent(String name, boolean analog) {
this.label = new JLabel(name);
this.analog = analog;
}
/**
* Gets the label for this gamepad component
* @returns a label with the name of this component as the text
*/
public JLabel getLabel() {
return label;
}
/**
* Checks if this component is analog or digital
* @returns whether this component is analog
*/
public boolean isAnalog() {
return analog;
}
}