Add key options to prefs dialog

This commit is contained in:
Campbell Suter 2016-10-14 09:46:45 +13:00
parent ae2765885f
commit d7a3904569
No known key found for this signature in database
GPG key ID: 754A66CCF3F73C0F
3 changed files with 1398 additions and 1014 deletions

View file

@ -0,0 +1,68 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package mage.client.components;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JToggleButton;
/**
*
* @author Campbell Suter <znix@znix.xyz>
*/
public class KeyBindButton extends JToggleButton implements KeyListener {
private int keyCode;
private String text;
public KeyBindButton() {
fixText();
addKeyListener(this);
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
if (!isSelected()) {
return;
}
keyCode = e.getKeyCode();
fixText();
setSelected(false);
System.out.println("text: " + text);
}
private void fixText() {
if (keyCode == 0) {
text = "<None>";
} else {
text = KeyEvent.getKeyText(keyCode);
}
repaint();
}
public void setKeyCode(int keyCode) {
this.keyCode = keyCode;
fixText();
}
public int getKeyCode() {
return keyCode;
}
@Override
public String getText() {
return text;
}
}