X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2FTButton.java;h=33fe73328b1773f9b42225537a70771fc8c8b6d6;hb=9588c7134280341ab6e92e37d1c1d00b3756cee5;hp=9c0e98be0a799765a013f278f1575f5562389a35;hpb=e23ea53820244957b17a7000c6d3e1ff586f1ef0;p=fanfix.git diff --git a/src/jexer/TButton.java b/src/jexer/TButton.java index 9c0e98b..33fe733 100644 --- a/src/jexer/TButton.java +++ b/src/jexer/TButton.java @@ -34,7 +34,8 @@ import jexer.bits.GraphicsChars; import jexer.bits.MnemonicString; import jexer.event.TKeypressEvent; import jexer.event.TMouseEvent; -import static jexer.TKeypress.*; +import static jexer.TKeypress.kbEnter; +import static jexer.TKeypress.kbSpace; /** * TButton implements a simple button. To make the button do something, pass @@ -69,7 +70,8 @@ public class TButton extends TWidget { private TAction action; /** - * The background color used for the button "shadow". + * The background color used for the button "shadow", or null for "no + * shadow". */ private CellAttributes shadowColor; @@ -240,10 +242,12 @@ public class TButton extends TWidget { putStringXY(1, 0, mnemonic.getRawLabel(), buttonColor); putCharXY(getWidth() - 2, 0, ' ', buttonColor); - putCharXY(getWidth() - 1, 0, - GraphicsChars.CP437[0xDC], shadowColor); - hLineXY(1, 1, getWidth() - 1, - GraphicsChars.CP437[0xDF], shadowColor); + if (shadowColor != null) { + putCharXY(getWidth() - 1, 0, + GraphicsChars.CP437[0xDC], shadowColor); + hLineXY(1, 1, getWidth() - 1, + GraphicsChars.CP437[0xDF], shadowColor); + } } if (mnemonic.getShortcutIdx() >= 0) { if (inButtonPress) { @@ -253,7 +257,6 @@ public class TButton extends TWidget { putCharXY(1 + mnemonic.getShortcutIdx(), 0, mnemonic.getShortcut(), menuMnemonicColor); } - } } @@ -282,15 +285,20 @@ public class TButton extends TWidget { } /** - * Set the background color used for the button "shadow". + * Set the background color used for the button "shadow". If null, no + * shadow will be drawn. * - * @param color the new background color + * @param color the new background color, or null for no shadow */ public void setShadowColor(final CellAttributes color) { - shadowColor = new CellAttributes(); - shadowColor.setTo(color); - shadowColor.setForeColor(Color.BLACK); - shadowColor.setBold(false); + if (color != null) { + shadowColor = new CellAttributes(); + shadowColor.setTo(color); + shadowColor.setForeColor(Color.BLACK); + shadowColor.setBold(false); + } else { + shadowColor = null; + } } }