From: Kevin Lamonte Date: Sun, 20 Aug 2017 20:44:35 +0000 (-0400) Subject: Fix ClassCastException X-Git-Tag: fanfix-swing-0.0.1~12^2~13^2~228 X-Git-Url: https://git.nikiroo.be/?a=commitdiff_plain;h=1c19fdeaff911aa6e9e028f3ad4db06c8d0597dd;p=fanfix-swing.git Fix ClassCastException --- diff --git a/src/jexer/TApplication.java b/src/jexer/TApplication.java index 57d60955..66f71101 100644 --- a/src/jexer/TApplication.java +++ b/src/jexer/TApplication.java @@ -2512,6 +2512,10 @@ public class TApplication implements Runnable { showAboutDialog(); return true; } + if (menu.getId() == TMenu.MID_REPAINT) { + doRepaint(); + return true; + } return false; } diff --git a/src/jexer/TWidget.java b/src/jexer/TWidget.java index 22766dde..12e43444 100644 --- a/src/jexer/TWidget.java +++ b/src/jexer/TWidget.java @@ -622,7 +622,12 @@ public abstract class TWidget implements Comparable { this.parent = parent; this.window = parent.window; children = new ArrayList(); - parent.addChild(this); + + // Do not add TStatusBars, they are drawn by TApplication + if (this instanceof TStatusBar) { + } else { + parent.addChild(this); + } } /** @@ -642,7 +647,12 @@ public abstract class TWidget implements Comparable { this.parent = parent; this.window = parent.window; children = new ArrayList(); - parent.addChild(this); + + // Do not add TStatusBars, they are drawn by TApplication + if (this instanceof TStatusBar) { + } else { + parent.addChild(this); + } this.x = x; this.y = y; diff --git a/src/jexer/menu/TMenu.java b/src/jexer/menu/TMenu.java index 0e948cee..c4a11df2 100644 --- a/src/jexer/menu/TMenu.java +++ b/src/jexer/menu/TMenu.java @@ -104,6 +104,9 @@ public final class TMenu extends TWindow { public static final int MID_HELP_ACTIVE_FILE = 45; public static final int MID_ABOUT = 46; + // Other + public static final int MID_REPAINT = 50; + /** * Public constructor. * @@ -477,6 +480,10 @@ public final class TMenu extends TWindow { label = i18n.getString("menuHelpAbout"); break; + case MID_REPAINT: + label = i18n.getString("menuRepaintDesktop"); + break; + default: throw new IllegalArgumentException("Invalid menu ID: " + id); } diff --git a/src/jexer/menu/TMenu.properties b/src/jexer/menu/TMenu.properties index bf3b4f3d..000df917 100644 --- a/src/jexer/menu/TMenu.properties +++ b/src/jexer/menu/TMenu.properties @@ -20,3 +20,5 @@ menuHelpPrevious=&Previous topic menuHelpHelp=&Help on help menuHelpActive=Active &file... menuHelpAbout=&About... + +menuRepaintDesktop=&Repaint desktop