From 67fd64904a2ad0ba9da0a2701eee939c1f9955e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Sun, 26 Apr 2015 07:07:36 +0200 Subject: [PATCH] Do not show again checkbox created in event dispatch thread (for Substance UI) --- src/com/jpexs/decompiler/flash/gui/View.java | 38 +++++++++----------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/src/com/jpexs/decompiler/flash/gui/View.java b/src/com/jpexs/decompiler/flash/gui/View.java index 2bd5e2deb..bd3776004 100644 --- a/src/com/jpexs/decompiler/flash/gui/View.java +++ b/src/com/jpexs/decompiler/flash/gui/View.java @@ -447,31 +447,27 @@ public class View { public static void showMessageDialog(final Component parentComponent, final String message, final String title, final int messageType, ConfigurationItem showAgainConfig) { - Object msg = message; - JCheckBox donotShowAgainCheckBox = new JCheckBox(AppStrings.translate("message.confirm.donotshowagain")); - - if (showAgainConfig != null) { - JLabel warLabel = new JLabel("" + message.replace("\r\n", "
") + ""); - final JPanel warPanel = new JPanel(new BorderLayout()); - warPanel.add(warLabel, BorderLayout.CENTER); - donotShowAgainCheckBox.setSelected(!showAgainConfig.get()); - warPanel.add(donotShowAgainCheckBox, BorderLayout.SOUTH); - msg = warPanel; - if (donotShowAgainCheckBox.isSelected()) { - return; + execInEventDispatch(() -> { + Object msg = message; + JCheckBox donotShowAgainCheckBox = new JCheckBox(AppStrings.translate("message.confirm.donotshowagain")); + if (showAgainConfig != null) { + JLabel warLabel = new JLabel("" + message.replace("\r\n", "
") + ""); + final JPanel warPanel = new JPanel(new BorderLayout()); + warPanel.add(warLabel, BorderLayout.CENTER); + donotShowAgainCheckBox.setSelected(!showAgainConfig.get()); + warPanel.add(donotShowAgainCheckBox, BorderLayout.SOUTH); + msg = warPanel; + if (donotShowAgainCheckBox.isSelected()) { + return; + } } - } - final Object fmsg = msg; + final Object fmsg = msg; - execInEventDispatch(new Runnable() { - @Override - public void run() { - JOptionPane.showMessageDialog(parentComponent, fmsg, title, messageType); + JOptionPane.showMessageDialog(parentComponent, fmsg, title, messageType); + if (showAgainConfig != null) { + showAgainConfig.set(!donotShowAgainCheckBox.isSelected()); } }); - if (showAgainConfig != null) { - showAgainConfig.set(!donotShowAgainCheckBox.isSelected()); - } } public static void showMessageDialog(final Component parentComponent, final Object message) {