keyboard: define access keys for more menus

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@771 d9718cc8-9f43-0410-858b-315f434eb58c
This commit is contained in:
jason@long.name 2013-07-25 20:47:32 +00:00
parent f55492f8b8
commit f0f101b78d
2 changed files with 66 additions and 10 deletions

View file

@ -402,8 +402,8 @@ public class MainWindow extends JFrame
private void setupKeys(JMenu menu, String prefix)
{
if (strings.containsKey(prefix+".access_key")) {
String mnemonic = strings.getString(prefix+".access_key");
if (strings.containsKey(prefix+".key")) {
String mnemonic = strings.getString(prefix+".key");
menu.setMnemonic(
KeyStroke.getKeyStroke(mnemonic).getKeyCode()
);
@ -412,8 +412,8 @@ public class MainWindow extends JFrame
private void setupKeys(JMenuItem menuItem, String prefix)
{
if (strings.containsKey(prefix+".access_key")) {
String mnemonic = strings.getString(prefix+".access_key");
if (strings.containsKey(prefix+".key")) {
String mnemonic = strings.getString(prefix+".key");
menuItem.setMnemonic(
KeyStroke.getKeyStroke(mnemonic).getKeyCode()
);
@ -491,9 +491,11 @@ public class MainWindow extends JFrame
gameMenu.add(menuItem);
JMenu optionsMenu = new JMenu(strings.getString("menu.options"));
setupKeys(optionsMenu, "menu.options");
menuBar.add(optionsMenu);
JMenu levelMenu = new JMenu(strings.getString("menu.difficulty"));
setupKeys(levelMenu, "menu.difficulty");
optionsMenu.add(levelMenu);
difficultyMenuItems = new HashMap<Integer,JMenuItem>();
@ -501,6 +503,7 @@ public class MainWindow extends JFrame
{
final int level = i;
menuItem = new JRadioButtonMenuItem(strings.getString("menu.difficulty."+level));
setupKeys(menuItem, "menu.difficulty."+level);
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent evt) {
@ -512,6 +515,7 @@ public class MainWindow extends JFrame
}
autoBudgetMenuItem = new JCheckBoxMenuItem(strings.getString("menu.options.auto_budget"));
setupKeys(autoBudgetMenuItem, "menu.options.auto_budget");
autoBudgetMenuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -522,6 +526,7 @@ public class MainWindow extends JFrame
optionsMenu.add(autoBudgetMenuItem);
autoBulldozeMenuItem = new JCheckBoxMenuItem(strings.getString("menu.options.auto_bulldoze"));
setupKeys(autoBulldozeMenuItem, "menu.options.auto_bulldoze");
autoBulldozeMenuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -532,6 +537,7 @@ public class MainWindow extends JFrame
optionsMenu.add(autoBulldozeMenuItem);
disastersMenuItem = new JCheckBoxMenuItem(strings.getString("menu.options.disasters"));
setupKeys(disastersMenuItem, "menu.options.disasters");
disastersMenuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -542,6 +548,7 @@ public class MainWindow extends JFrame
optionsMenu.add(disastersMenuItem);
soundsMenuItem = new JCheckBoxMenuItem(strings.getString("menu.options.sound"));
setupKeys(soundsMenuItem, "menu.options.sound");
soundsMenuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -552,9 +559,11 @@ public class MainWindow extends JFrame
optionsMenu.add(soundsMenuItem);
JMenu disastersMenu = new JMenu(strings.getString("menu.disasters"));
setupKeys(disastersMenu, "menu.disasters");
menuBar.add(disastersMenu);
menuItem = new JMenuItem(strings.getString("menu.disasters.MONSTER"));
setupKeys(menuItem, "menu.disasters.MONSTER");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -565,6 +574,7 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.disasters.FIRE"));
setupKeys(menuItem, "menu.disasters.FIRE");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -575,6 +585,7 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.disasters.FLOOD"));
setupKeys(menuItem, "menu.disasters.FLOOD");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -585,6 +596,7 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.disasters.MELTDOWN"));
setupKeys(menuItem, "menu.disasters.MELTDOWN");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -595,6 +607,7 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.disasters.TORNADO"));
setupKeys(menuItem, "menu.disasters.TORNADO");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -605,6 +618,7 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.disasters.EARTHQUAKE"));
setupKeys(menuItem, "menu.disasters.EARTHQUAKE");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -615,10 +629,12 @@ public class MainWindow extends JFrame
disastersMenu.add(menuItem);
JMenu priorityMenu = new JMenu(strings.getString("menu.speed"));
setupKeys(priorityMenu, "menu.speed");
menuBar.add(priorityMenu);
priorityMenuItems = new EnumMap<Speed,JMenuItem>(Speed.class);
menuItem = new JRadioButtonMenuItem(strings.getString("menu.speed.SUPER_FAST"));
setupKeys(menuItem, "menu.speed.SUPER_FAST");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -630,6 +646,7 @@ public class MainWindow extends JFrame
priorityMenuItems.put(Speed.SUPER_FAST, menuItem);
menuItem = new JRadioButtonMenuItem(strings.getString("menu.speed.FAST"));
setupKeys(menuItem, "menu.speed.FAST");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -641,6 +658,7 @@ public class MainWindow extends JFrame
priorityMenuItems.put(Speed.FAST, menuItem);
menuItem = new JRadioButtonMenuItem(strings.getString("menu.speed.NORMAL"));
setupKeys(menuItem, "menu.speed.NORMAL");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -652,6 +670,7 @@ public class MainWindow extends JFrame
priorityMenuItems.put(Speed.NORMAL, menuItem);
menuItem = new JRadioButtonMenuItem(strings.getString("menu.speed.SLOW"));
setupKeys(menuItem, "menu.speed.SLOW");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -663,6 +682,7 @@ public class MainWindow extends JFrame
priorityMenuItems.put(Speed.SLOW, menuItem);
menuItem = new JRadioButtonMenuItem(strings.getString("menu.speed.PAUSED"));
setupKeys(menuItem, "menu.speed.PAUSED");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -674,9 +694,11 @@ public class MainWindow extends JFrame
priorityMenuItems.put(Speed.PAUSED, menuItem);
JMenu windowsMenu = new JMenu(strings.getString("menu.windows"));
setupKeys(windowsMenu, "menu.windows");
menuBar.add(windowsMenu);
menuItem = new JMenuItem(strings.getString("menu.windows.budget"));
setupKeys(menuItem, "menu.windows.budget");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -687,6 +709,7 @@ public class MainWindow extends JFrame
windowsMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.windows.evaluation"));
setupKeys(menuItem, "menu.windows.evaluation");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -697,6 +720,7 @@ public class MainWindow extends JFrame
windowsMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.windows.graph"));
setupKeys(menuItem, "menu.windows.graph");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)
@ -707,9 +731,11 @@ public class MainWindow extends JFrame
windowsMenu.add(menuItem);
JMenu helpMenu = new JMenu(strings.getString("menu.help"));
setupKeys(helpMenu, "menu.help");
menuBar.add(helpMenu);
menuItem = new JMenuItem(strings.getString("menu.help.launch-translation-tool"));
setupKeys(menuItem, "menu.help.launch-translation-tool");
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt)
{
@ -718,6 +744,7 @@ public class MainWindow extends JFrame
helpMenu.add(menuItem);
menuItem = new JMenuItem(strings.getString("menu.help.about"));
setupKeys(menuItem, "menu.help.about");
menuItem.addActionListener(wrapActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent ev)

View file

@ -69,55 +69,84 @@ menu.overlays.FIRE_OVERLAY = Fire Coverage
menu.overlays.POLICE_OVERLAY = Police Coverage
menu.game = Game
menu.game.access_key = G
menu.game.key = G
menu.game.new = New City...
menu.game.new.access_key = N
menu.game.new.key = N
menu.game.new.shortcut = ctrl N
menu.game.load = Load City...
menu.game.load.access_key = L
menu.game.load.key = L
menu.game.load.shortcut = ctrl O
menu.game.save = Save City
menu.game.save.access_key = S
menu.game.save.key = S
menu.game.save.shortcut = ctrl S
menu.game.save_as = Save City as...
menu.game.save_as.access_key = A
menu.game.save_as.key = A
menu.game.exit = Exit
menu.game.exit.access_key = X
menu.game.exit.key = X
menu.options = Options
menu.options.key = O
menu.options.auto_budget = Auto Budget
menu.options.auto_budget.key = A
menu.options.auto_bulldoze = Auto Bulldoze
menu.options.auto_bulldoze.key = Z
menu.options.disasters = Disasters
menu.options.disasters.key = D
menu.options.sound = Sound
menu.options.sound.key = S
menu.difficulty = Difficulty
menu.difficulty.key = F
menu.difficulty.0 = Easy
menu.difficulty.0.key = E
menu.difficulty.1 = Medium
menu.difficulty.1.key = M
menu.difficulty.2 = Hard
menu.difficulty.2.key = H
menu.disasters = Disasters
menu.disasters.key = D
menu.disasters.MONSTER = Monster
menu.disasters.MONSTER.key = M
menu.disasters.FIRE = Fire
menu.disasters.FIRE.key = F
menu.disasters.FLOOD = Flood
menu.disasters.FLOOD.key = L
menu.disasters.MELTDOWN = Meltdown
menu.disasters.MELTDOWN.key = E
menu.disasters.TORNADO = Tornado
menu.disasters.TORNADO.key = T
menu.disasters.EARTHQUAKE = Earthquake
menu.disasters.EARTHQUAKE.key = Q
menu.speed = Speed
menu.speed.key = S
menu.speed.SUPER_FAST = Super Fast
menu.speed.SUPER_FAST.key = R
menu.speed.FAST = Fast
menu.speed.FAST.key = F
menu.speed.NORMAL = Normal
menu.speed.NORMAL.key = N
menu.speed.SLOW = Slow
menu.speed.SLOW.key = S
menu.speed.PAUSED = Paused
menu.speed.PAUSED.key = P
menu.windows = Windows
menu.windows.key = W
menu.windows.budget = Budget
menu.windows.budget.key = B
menu.windows.evaluation = Evaluation
menu.windows.evaluation.key = E
menu.windows.graph = Graph
menu.windows.graph.key = G
menu.help = Help
menu.help.key = H
menu.help.launch-translation-tool = Launch Translation Tool
menu.help.launch-translation-tool.key = T
menu.help.about = About
menu.help.about.key = A
!
! Tools