From be58b498e85ec50ad217011be42128083ec3fbe3 Mon Sep 17 00:00:00 2001 From: Honfika Date: Sat, 28 Dec 2013 20:34:18 +0100 Subject: [PATCH] #390 Reload list of fonts to import --- .../com/jpexs/decompiler/flash/gui/Main.java | 3 +++ .../flash/gui/MainFrameClassicMenu.java | 2 +- .../flash/gui/MainFrameRibbonMenu.java | 2 +- .../decompiler/flash/tags/base/FontTag.java | 18 +++++++++++++----- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/Main.java b/trunk/src/com/jpexs/decompiler/flash/gui/Main.java index 6e896ffb6..5a7d8de9b 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/Main.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/Main.java @@ -27,6 +27,7 @@ import com.jpexs.decompiler.flash.console.CommandLineArgumentParser; import com.jpexs.decompiler.flash.console.ContextMenuTools; import com.jpexs.decompiler.flash.gui.player.FlashPlayerPanel; import com.jpexs.decompiler.flash.gui.proxy.ProxyFrame; +import com.jpexs.decompiler.flash.tags.base.FontTag; import com.jpexs.helpers.Cache; import com.jpexs.helpers.CancellableWorker; import com.jpexs.helpers.Helper; @@ -401,6 +402,8 @@ public class Main { mainFrame.setVisible(false); mainFrame = null; } + FontTag.reload(); + Cache.clearAll(); initGui(); reloadSWFs(); } diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameClassicMenu.java b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameClassicMenu.java index 05b95aefa..7330a59d7 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameClassicMenu.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameClassicMenu.java @@ -366,7 +366,7 @@ public class MainFrameClassicMenu implements MainFrameMenu, ActionListener { switch (e.getActionCommand()) { case ACTION_RELOAD: if (View.showConfirmDialog(null, translate("message.confirm.reload"), translate("message.warning"), JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE) == JOptionPane.YES_OPTION) { - Main.reloadSWFs(); + Main.reloadApp(); } break; case ACTION_ADVANCED_SETTINGS: diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbonMenu.java b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbonMenu.java index 91d2c27aa..274f538c9 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbonMenu.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbonMenu.java @@ -504,7 +504,7 @@ public class MainFrameRibbonMenu implements MainFrameMenu, ActionListener { switch (e.getActionCommand()) { case ACTION_RELOAD: if (View.showConfirmDialog(null, translate("message.confirm.reload"), translate("message.warning"), JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE) == JOptionPane.YES_OPTION) { - Main.reloadSWFs(); + Main.reloadApp(); } break; case ACTION_ADVANCED_SETTINGS: diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java index e91b1cc05..15de56975 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java @@ -83,6 +83,16 @@ public abstract class FontTag extends CharacterTag implements AloneTag, Drawable public abstract int getLeading(); + public static String[] fontNamesArray; + + public static List fontNames; + + public static String defaultFontName; + + static { + reload(); + } + public boolean hasLayout() { return false; } @@ -168,11 +178,9 @@ public abstract class FontTag extends CharacterTag implements AloneTag, Drawable return gm.getAdvanceX(); } - public static final String[] fontNamesArray = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); - public static final List fontNames = Arrays.asList(fontNamesArray); - public static final String defaultFontName; - - static { + public static void reload() { + fontNamesArray = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); + fontNames = Arrays.asList(fontNamesArray); if (fontNames.contains("Times New Roman")) { defaultFontName = "Times New Roman"; } else if (fontNames.contains("Arial")) {