abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/KeyValue.java
blob: 1b6ef2316ac41187c5225b0394e740c3d660cbea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package juloo.keyboard2;

import android.view.KeyEvent;
import java.util.HashMap;

class KeyValue
{
	private String		_name;
	private String		_symbol;
	private char		_char;

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

	public String		getSymbol()
	{
		return (_symbol);
	}

	public char			getChar()
	{
		return (_char);
	}

	private static HashMap<String, KeyValue> keys = new HashMap<String, KeyValue>();

	private KeyValue(String name, String symbol, char c)
	{
		_name = name;
		_symbol = symbol;
		_char = c;
	}

	public static KeyValue	getKeyByName(String name)
	{
		return (KeyValue.keys.get(name));
	}

	private static void		add(String name, String symbol, char c)
	{
		keys.put(name, new KeyValue(name, symbol, c));
	}

	static
	{
		String chars = "abcdefghijklmnopqrstuvwxyz"
			+ "àçéèêë"
			+ "0123456789<>"
			+ "&é\"'(-_)=°+"
			+ "~#{[|`\\^@]}"
			+ "^$ù*,;:!¨£%µ?./§";
		for (int i = 0; i < chars.length(); i++)
			add(chars.substring(i, i + 1), chars.substring(i, i + 1), chars.charAt(i));
		add("shift", "Shift", 'S');
		add("ctrl", "Ctrl", 'C');
		add("alt", "Alt", 'A');

		add("back", "⌫", '\u007F');
		add("up", "↑", 'U');
		add("right", "→", 'R');
		add("down", "↓", 'D');
		add("left", "←", 'L');
		add("page_up", "⇞", 'U');
		add("page_down", "⇟", 'D');
		add("home", "↖", 'H');
		add("end", "↗", 'E');
		add("tab", "↹", '\t');
		add("return", "↵", '\n');
		add("space", " ", ' ');
		add("delete", "⌦", 'D');
	}
}