X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjexer%2FTButton.java;h=064e927566effd281321502a7ad02031012fff84;hb=329fd62e4acdaa8e9f4cccd518d47c0b07e79f51;hp=24ee94c1abb9c0ff942ddeb90ef1a2c232cc356c;hpb=30d336cc33e26af877f7950b93f3b77d9c3a3bd3;p=fanfix.git diff --git a/src/jexer/TButton.java b/src/jexer/TButton.java index 24ee94c..064e927 100644 --- a/src/jexer/TButton.java +++ b/src/jexer/TButton.java @@ -1,4 +1,4 @@ -/** +/* * Jexer - Java Text User Interface * * License: LGPLv3 or later @@ -51,6 +51,15 @@ public final class TButton extends TWidget { */ private MnemonicString mnemonic; + /** + * Get the mnemonic string for this button. + * + * @return mnemonic string + */ + public MnemonicString getMnemonic() { + return mnemonic; + } + /** * Remember mouse state. */ @@ -66,6 +75,16 @@ public final class TButton extends TWidget { */ private TAction action; + /** + * Act as though the button was pressed. This is useful for other UI + * elements to get the same action as if the user clicked the button. + */ + public void dispatch() { + if (action != null) { + action.DO(); + } + } + /** * Private constructor. * @@ -136,10 +155,10 @@ public final class TButton extends TWidget { shadowColor.setForeColor(Color.BLACK); shadowColor.setBold(false); - if (!getEnabled()) { + if (!isEnabled()) { buttonColor = getTheme().getColor("tbutton.disabled"); menuMnemonicColor = getTheme().getColor("tbutton.disabled"); - } else if (getAbsoluteActive()) { + } else if (isAbsoluteActive()) { buttonColor = getTheme().getColor("tbutton.active"); menuMnemonicColor = getTheme().getColor("tbutton.mnemonic.highlighted"); } else { @@ -149,11 +168,11 @@ public final class TButton extends TWidget { if (inButtonPress) { getScreen().putCharXY(1, 0, ' ', buttonColor); - getScreen().putStrXY(2, 0, mnemonic.getRawLabel(), buttonColor); + getScreen().putStringXY(2, 0, mnemonic.getRawLabel(), buttonColor); getScreen().putCharXY(getWidth() - 1, 0, ' ', buttonColor); } else { getScreen().putCharXY(0, 0, ' ', buttonColor); - getScreen().putStrXY(1, 0, mnemonic.getRawLabel(), buttonColor); + getScreen().putStringXY(1, 0, mnemonic.getRawLabel(), buttonColor); getScreen().putCharXY(getWidth() - 2, 0, ' ', buttonColor); getScreen().putCharXY(getWidth() - 1, 0, @@ -182,7 +201,7 @@ public final class TButton extends TWidget { public void onMouseDown(final TMouseEvent mouse) { this.mouse = mouse; - if ((mouseOnButton()) && (mouse.getMouse1())) { + if ((mouseOnButton()) && (mouse.isMouse1())) { // Begin button press inButtonPress = true; } @@ -197,7 +216,7 @@ public final class TButton extends TWidget { public void onMouseUp(final TMouseEvent mouse) { this.mouse = mouse; - if (inButtonPress && mouse.getMouse1()) { + if (inButtonPress && mouse.isMouse1()) { inButtonPress = false; // Dispatch the event if (action != null) {