diff --git a/forge-gui-mobile/src/forge/screens/home/HomeScreen.java b/forge-gui-mobile/src/forge/screens/home/HomeScreen.java index 8b83938eb60..848b8f2a953 100644 --- a/forge-gui-mobile/src/forge/screens/home/HomeScreen.java +++ b/forge-gui-mobile/src/forge/screens/home/HomeScreen.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import com.badlogic.gdx.graphics.g2d.BitmapFont.HAlignment; - import forge.Forge; import forge.Graphics; import forge.assets.FSkinColor; @@ -20,7 +19,10 @@ import forge.toolbox.FButton; import forge.toolbox.FEvent; import forge.toolbox.FEvent.FEventHandler; import forge.toolbox.FLabel; +import forge.toolbox.FOptionPane; import forge.toolbox.FScrollPane; +import forge.util.Callback; +import forge.util.Localizer; import forge.util.Utils; public class HomeScreen extends FScreen { @@ -41,28 +43,30 @@ public class HomeScreen extends FScreen { private HomeScreen() { super((Header)null); - addButton("New Game", new FEventHandler() { + final Localizer localizer = Localizer.getInstance(); + + addButton(localizer.getMessage("lblNewGame"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 0; NewGameMenu.getPreferredScreen().open(); } }); - addButton("Load Game", new FEventHandler() { + addButton(localizer.getMessage("lblLoadGame"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 1; LoadGameMenu.getPreferredScreen().open(); } }); - addButton("Play Online", new FEventHandler() { + addButton(localizer.getMessage("lblOnlineMultiplayer"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 2; OnlineScreen.Lobby.open(); } }); - addButton("Deck Manager", new FEventHandler() { + addButton(localizer.getMessage("lblDeckManager"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 3; @@ -76,25 +80,42 @@ public class HomeScreen extends FScreen { return 0; } }; - deckManager.setHeaderCaption("Deck Manager"); + deckManager.setHeaderCaption(localizer.getMessage("lblDeckManager")); } Forge.openScreen(deckManager); } }); - addButton("Achievements", new FEventHandler() { + addButton(localizer.getMessage("Achievements"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 4; AchievementsScreen.show(); } }); - addButton("Settings", new FEventHandler() { + addButton(localizer.getMessage("lblGameSettings"), new FEventHandler() { @Override public void handleEvent(FEvent e) { activeButtonIndex = 5; SettingsScreen.show(true); } }); + addButton(localizer.getMessage("lblExit"), new FEventHandler() { + @Override + public void handleEvent(FEvent e) { + activeButtonIndex = 6; + FOptionPane.showConfirmDialog( + localizer.getMessage("lblAreYouSureYouWishExitForge"), + localizer.getMessage("lblExitForge"), + localizer.getMessage("lblExit"), localizer.getMessage("lblCancel"), false, new Callback() { + @Override + public void run(Boolean result) { + if (result) { + Forge.exit(true); + } + } + }); + } + }); baseButtonCount = buttons.size(); } diff --git a/forge-gui-mobile/src/forge/screens/home/LoadGameMenu.java b/forge-gui-mobile/src/forge/screens/home/LoadGameMenu.java index 4a81251fc19..1ff05bc4dfd 100644 --- a/forge-gui-mobile/src/forge/screens/home/LoadGameMenu.java +++ b/forge-gui-mobile/src/forge/screens/home/LoadGameMenu.java @@ -16,14 +16,17 @@ import forge.screens.planarconquest.LoadConquestScreen; import forge.screens.quest.LoadQuestScreen; import forge.toolbox.FEvent; import forge.toolbox.FEvent.FEventHandler; +import forge.util.Localizer; public class LoadGameMenu extends FPopupMenu { + final static Localizer localizer = Localizer.getInstance(); + public enum LoadGameScreen { - BoosterDraft("Booster Draft", FSkinImage.HAND, LoadDraftScreen.class), - SealedDeck("Sealed Deck", FSkinImage.PACK, LoadSealedScreen.class), - QuestMode("Quest Mode", FSkinImage.QUEST_ZEP, LoadQuestScreen.class), - PlanarConquest("Planar Conquest", FSkinImage.MULTIVERSE, LoadConquestScreen.class), - Gauntlet("Gauntlet", FSkinImage.ALPHASTRIKE, LoadGauntletScreen.class); + BoosterDraft(localizer.getMessage("lblBoosterDraft"), FSkinImage.HAND, LoadDraftScreen.class), + SealedDeck(localizer.getMessage("lblSealedDeck"), FSkinImage.PACK, LoadSealedScreen.class), + QuestMode(localizer.getMessage("lblQuestMode"), FSkinImage.QUEST_ZEP, LoadQuestScreen.class), + PlanarConquest(localizer.getMessage("lblPlanarConquest"), FSkinImage.MULTIVERSE, LoadConquestScreen.class), + Gauntlet(localizer.getMessage("lblGauntlet"), FSkinImage.ALPHASTRIKE, LoadGauntletScreen.class); private final FMenuItem item; private final Class screenClass; @@ -44,7 +47,7 @@ public class LoadGameMenu extends FPopupMenu { if (screen == null) { //don't initialize screen until it's opened the first time try { screen = screenClass.newInstance(); - screen.setHeaderCaption("Load Game - " + item.getText()); + screen.setHeaderCaption(localizer.getMessage("lblLoadGame") + " - " + item.getText()); } catch (Exception e) { e.printStackTrace(); diff --git a/forge-gui-mobile/src/forge/screens/home/NewGameMenu.java b/forge-gui-mobile/src/forge/screens/home/NewGameMenu.java index 23b8188febd..e1756cf2434 100644 --- a/forge-gui-mobile/src/forge/screens/home/NewGameMenu.java +++ b/forge-gui-mobile/src/forge/screens/home/NewGameMenu.java @@ -18,17 +18,20 @@ import forge.screens.planarconquest.NewConquestScreen; import forge.screens.quest.NewQuestScreen; import forge.toolbox.FEvent; import forge.toolbox.FEvent.FEventHandler; +import forge.util.Localizer; public class NewGameMenu extends FPopupMenu { + final static Localizer localizer = Localizer.getInstance(); + public enum NewGameScreen { - Constructed("Constructed", FSkinImage.DECKLIST, ConstructedScreen.class), - BoosterDraft("Booster Draft", FSkinImage.HAND, NewDraftScreen.class), - SealedDeck("Sealed Deck", FSkinImage.PACK, NewSealedScreen.class), - QuestMode("Quest Mode", FSkinImage.QUEST_ZEP, NewQuestScreen.class), - PuzzleMode("Puzzle Mode", FSkinImage.QUEST_BOOK, PuzzleScreen.class), - PlanarConquest("Planar Conquest", FSkinImage.MULTIVERSE, NewConquestScreen.class), - Gauntlet("Gauntlet", FSkinImage.ALPHASTRIKE, NewGauntletScreen.class); - + Constructed(localizer.getMessage("lblConstructed"), FSkinImage.DECKLIST, ConstructedScreen.class), + BoosterDraft(localizer.getMessage("lblBoosterDraft"), FSkinImage.HAND, NewDraftScreen.class), + SealedDeck(localizer.getMessage("lblSealedDeck"), FSkinImage.PACK, NewSealedScreen.class), + QuestMode(localizer.getMessage("lblQuestMode"), FSkinImage.QUEST_ZEP, NewQuestScreen.class), + PuzzleMode(localizer.getMessage("lblPuzzleMode"), FSkinImage.QUEST_BOOK, PuzzleScreen.class), + PlanarConquest(localizer.getMessage("lblPlanarConquest"), FSkinImage.MULTIVERSE, NewConquestScreen.class), + Gauntlet(localizer.getMessage("lblGauntlet"), FSkinImage.ALPHASTRIKE, NewGauntletScreen.class); + private final FMenuItem item; private final Class screenClass; private FScreen screen; @@ -48,7 +51,7 @@ public class NewGameMenu extends FPopupMenu { if (screen == null) { //don't initialize screen until it's opened the first time try { screen = screenClass.newInstance(); - screen.setHeaderCaption("New Game - " + item.getText()); + screen.setHeaderCaption(localizer.getMessage("lblNewGame") + " - " + item.getText()); } catch (Exception e) { e.printStackTrace(); diff --git a/forge-gui/res/languages/de-DE.properties b/forge-gui/res/languages/de-DE.properties index 8b929cb4ab3..5b5cb16e6ed 100644 --- a/forge-gui/res/languages/de-DE.properties +++ b/forge-gui/res/languages/de-DE.properties @@ -877,3 +877,6 @@ lblDraftRanking=Draft-Rang lblToughness=Widerstand ttToughness=Widerstand ttType=Typ +#HomeScreen.java +lblNewGame=Neues Spiel +lblLoadGame=Spiel laden \ No newline at end of file diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index 29a3614ee38..64c58bac56f 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -876,4 +876,7 @@ lblRanking=Ranking lblDraftRanking=Draft Ranking lblToughness=Toughness ttToughness=Toughness -ttType=Type \ No newline at end of file +ttType=Type +#HomeScreen.java +lblNewGame=New Game +lblLoadGame=Load Game \ No newline at end of file diff --git a/forge-gui/res/languages/es-es.properties b/forge-gui/res/languages/es-es.properties index ee8de86ffb9..c1a848d2339 100644 --- a/forge-gui/res/languages/es-es.properties +++ b/forge-gui/res/languages/es-es.properties @@ -876,4 +876,7 @@ lblRanking=Ranking lblDraftRanking=Ranking en el Draft lblToughness=Resistencia ttToughness=Toughness -ttType=Type \ No newline at end of file +ttType=Type +#HomeScreen.java +lblNewGame=Nueva partida +lblLoadGame=Cargar partida \ No newline at end of file