From fa6fce9589c16a61909bbe1e44309fb353dae9ec Mon Sep 17 00:00:00 2001 From: klaxnek Date: Wed, 23 Oct 2019 11:47:21 +0200 Subject: [PATCH] Moved CardTranslation to forge-core. We need it to translate card info in forge-game. --- .../java/forge/util}/CardTranslation.java | 19 ++++++++----------- .../src/main/java/forge/util/LineReader.java | 0 .../java/forge/view/arcane/CardPanel.java | 2 +- forge-gui-mobile/src/forge/Forge.java | 4 ++-- .../src/forge/card/CardImageRenderer.java | 1 + .../src/forge/card/CardRenderer.java | 1 + .../main/java/forge/card/CardDetailUtil.java | 1 + .../src/main/java/forge/model/FModel.java | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) rename {forge-gui/src/main/java/forge/card => forge-core/src/main/java/forge/util}/CardTranslation.java (81%) rename {forge-gui => forge-core}/src/main/java/forge/util/LineReader.java (100%) diff --git a/forge-gui/src/main/java/forge/card/CardTranslation.java b/forge-core/src/main/java/forge/util/CardTranslation.java similarity index 81% rename from forge-gui/src/main/java/forge/card/CardTranslation.java rename to forge-core/src/main/java/forge/util/CardTranslation.java index babdb70d35d..7e6d7b3dfdb 100644 --- a/forge-gui/src/main/java/forge/card/CardTranslation.java +++ b/forge-core/src/main/java/forge/util/CardTranslation.java @@ -1,9 +1,6 @@ -package forge.card; +package forge.util; -import com.esotericsoftware.minlog.Log; import com.google.common.base.Charsets; -import forge.properties.ForgeConstants; -import forge.util.LineReader; import java.io.FileInputStream; import java.io.IOException; @@ -15,12 +12,12 @@ public class CardTranslation { private static Map translatednames; private static Map translatedtypes; private static Map translatedoracles; - private static String languageSelected; + private static String languageSelected = "en-US"; - private static void readTranslationFile(String language) { + private static void readTranslationFile(String language, String languagesDirectory) { String filename = "cardnames-" + language + ".txt"; - try (LineReader translationFile = new LineReader(new FileInputStream(ForgeConstants.LANG_DIR + filename), Charsets.UTF_8)) { + try (LineReader translationFile = new LineReader(new FileInputStream(languagesDirectory + filename), Charsets.UTF_8)) { for (String line : translationFile.readLines()) { String[] matches = line.split("\\|"); if (matches.length >= 2) { @@ -34,7 +31,7 @@ public class CardTranslation { } } } catch (IOException e) { - Log.error("Error reading translation file: cardnames-" + language + ".txt"); + System.err.println("Error reading translation file: cardnames-" + language + ".txt"); } } @@ -66,7 +63,7 @@ public class CardTranslation { } public static HashMap getTranslationTexts(String cardname, String altcardname) { - HashMap translations = new HashMap(); + HashMap translations = new HashMap<>(); translations.put("name", getTranslatedName(cardname)); translations.put("oracle", getTranslatedOracle(cardname)); translations.put("altname", getTranslatedName(altcardname)); @@ -78,14 +75,14 @@ public class CardTranslation { return !languageSelected.equals("en-US"); } - public static void preloadTranslation(String language) { + public static void preloadTranslation(String language, String languagesDirectory) { languageSelected = language; if (needsTranslation()) { translatednames = new HashMap<>(); translatedtypes = new HashMap<>(); translatedoracles = new HashMap<>(); - readTranslationFile(languageSelected); + readTranslationFile(languageSelected, languagesDirectory); } } } \ No newline at end of file diff --git a/forge-gui/src/main/java/forge/util/LineReader.java b/forge-core/src/main/java/forge/util/LineReader.java similarity index 100% rename from forge-gui/src/main/java/forge/util/LineReader.java rename to forge-core/src/main/java/forge/util/LineReader.java diff --git a/forge-gui-desktop/src/main/java/forge/view/arcane/CardPanel.java b/forge-gui-desktop/src/main/java/forge/view/arcane/CardPanel.java index 219ba5887b7..641619e9a9c 100644 --- a/forge-gui-desktop/src/main/java/forge/view/arcane/CardPanel.java +++ b/forge-gui-desktop/src/main/java/forge/view/arcane/CardPanel.java @@ -21,7 +21,6 @@ import forge.CachedCardImage; import forge.FThreads; import forge.StaticData; import forge.card.CardEdition; -import forge.card.CardTranslation; import forge.card.mana.ManaCost; import forge.game.card.Card; import forge.game.card.CardView; @@ -39,6 +38,7 @@ import forge.screens.match.CMatchUI; import forge.toolbox.CardFaceSymbols; import forge.toolbox.FSkin.SkinnedPanel; import forge.toolbox.IDisposable; +import forge.util.CardTranslation; import forge.view.arcane.util.OutlinedLabel; import javax.swing.*; diff --git a/forge-gui-mobile/src/forge/Forge.java b/forge-gui-mobile/src/forge/Forge.java index fef11349ffc..803f4196772 100644 --- a/forge-gui-mobile/src/forge/Forge.java +++ b/forge-gui-mobile/src/forge/Forge.java @@ -10,7 +10,6 @@ import forge.assets.AssetsDownloader; import forge.assets.FSkin; import forge.assets.FSkinFont; import forge.assets.ImageCache; -import forge.card.CardTranslation; import forge.error.BugReporter; import forge.error.ExceptionHandler; import forge.interfaces.IDeviceAdapter; @@ -31,6 +30,7 @@ import forge.toolbox.FGestureAdapter; import forge.toolbox.FOptionPane; import forge.toolbox.FOverlay; import forge.util.Callback; +import forge.util.CardTranslation; import forge.util.FileUtil; import forge.util.Localizer; import forge.util.Utils; @@ -129,7 +129,7 @@ public class Forge implements ApplicationListener { FSkinFont.preloadAll(locale); splashScreen.getProgressBar().setDescription(localizer.getMessage("lblLoadingCardTranslations")); - CardTranslation.preloadTranslation(locale); + CardTranslation.preloadTranslation(locale, ForgeConstants.LANG_DIR); splashScreen.getProgressBar().setDescription(localizer.getMessage("lblFinishingStartup")); diff --git a/forge-gui-mobile/src/forge/card/CardImageRenderer.java b/forge-gui-mobile/src/forge/card/CardImageRenderer.java index 732427443eb..854cd168df3 100644 --- a/forge-gui-mobile/src/forge/card/CardImageRenderer.java +++ b/forge-gui-mobile/src/forge/card/CardImageRenderer.java @@ -25,6 +25,7 @@ import forge.properties.ForgeConstants; import forge.properties.ForgePreferences; import forge.screens.FScreen; import forge.screens.match.MatchController; +import forge.util.CardTranslation; import forge.util.Utils; import org.apache.commons.lang3.StringUtils; diff --git a/forge-gui-mobile/src/forge/card/CardRenderer.java b/forge-gui-mobile/src/forge/card/CardRenderer.java index 77fae4d5bd1..1dfac132144 100644 --- a/forge-gui-mobile/src/forge/card/CardRenderer.java +++ b/forge-gui-mobile/src/forge/card/CardRenderer.java @@ -46,6 +46,7 @@ import forge.properties.ForgePreferences; import forge.properties.ForgePreferences.FPref; import forge.screens.match.MatchController; import forge.toolbox.FList; +import forge.util.CardTranslation; import forge.util.Utils; import org.apache.commons.lang3.StringUtils; import forge.util.TextBounds; diff --git a/forge-gui/src/main/java/forge/card/CardDetailUtil.java b/forge-gui/src/main/java/forge/card/CardDetailUtil.java index da99512137f..8694427ce53 100644 --- a/forge-gui/src/main/java/forge/card/CardDetailUtil.java +++ b/forge-gui/src/main/java/forge/card/CardDetailUtil.java @@ -14,6 +14,7 @@ import forge.item.SealedProduct; import forge.model.FModel; import forge.properties.ForgeConstants; import forge.properties.ForgePreferences; +import forge.util.CardTranslation; import forge.util.Lang; import org.apache.commons.lang3.StringUtils; diff --git a/forge-gui/src/main/java/forge/model/FModel.java b/forge-gui/src/main/java/forge/model/FModel.java index d1732ab280b..00e41d3456f 100644 --- a/forge-gui/src/main/java/forge/model/FModel.java +++ b/forge-gui/src/main/java/forge/model/FModel.java @@ -24,7 +24,6 @@ import forge.CardStorageReader.ProgressObserver; import forge.achievement.*; import forge.ai.AiProfileUtil; import forge.card.CardPreferences; -import forge.card.CardTranslation; import forge.card.CardType; import forge.deck.CardArchetypeLDAGenerator; import forge.deck.CardRelationMatrixGenerator; @@ -49,6 +48,7 @@ import forge.quest.QuestController; import forge.quest.QuestWorld; import forge.quest.data.QuestPreferences; import forge.tournament.TournamentData; +import forge.util.CardTranslation; import forge.util.FileUtil; import forge.util.Localizer; import forge.util.storage.IStorage; @@ -147,7 +147,7 @@ public final class FModel { final CardStorageReader tokenReader = new CardStorageReader(ForgeConstants.TOKEN_DATA_DIR, progressBarBridge, FModel.getPreferences().getPrefBoolean(FPref.LOAD_CARD_SCRIPTS_LAZILY)); magicDb = new StaticData(reader, tokenReader, ForgeConstants.EDITIONS_DIR, ForgeConstants.BLOCK_DATA_DIR); - CardTranslation.preloadTranslation(preferences.getPref(FPref.UI_LANGUAGE)); + CardTranslation.preloadTranslation(preferences.getPref(FPref.UI_LANGUAGE), ForgeConstants.LANG_DIR); //create profile dirs if they don't already exist for (final String dname : ForgeConstants.PROFILE_DIRS) {