X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2FTKeypress.java;h=c965e7dbab48873ae31a35963d4aaef4231cdcaf;hb=12b90437b5f22c2ae6e9b9b14c3b62b60f6143e5;hp=2470bdfba892196348016f85f0633489413352c5;hpb=d6ee0801333ff93dffd851f4c1a44519c96c371d;p=fanfix.git diff --git a/src/jexer/TKeypress.java b/src/jexer/TKeypress.java index 2470bdf..c965e7d 100644 --- a/src/jexer/TKeypress.java +++ b/src/jexer/TKeypress.java @@ -3,7 +3,7 @@ * * The MIT License (MIT) * - * Copyright (C) 2017 Kevin Lamonte + * Copyright (C) 2019 Kevin Lamonte * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -31,7 +31,7 @@ package jexer; /** * This class represents keystrokes. */ -public final class TKeypress { +public class TKeypress { // ------------------------------------------------------------------------ // Constants -------------------------------------------------------------- @@ -174,7 +174,6 @@ public final class TKeypress { */ public static final int ESC = 43; - // Special "no-key" keypress, used to ignore undefined keystrokes public static final TKeypress kbNoKey = new TKeypress(true, TKeypress.NONE, ' ', false, false, false); @@ -488,6 +487,26 @@ public final class TKeypress { 0, 'y', true, false, false); public static final TKeypress kbAltZ = new TKeypress(false, 0, 'z', true, false, false); + public static final TKeypress kbAlt0 = new TKeypress(false, + 0, '0', true, false, false); + public static final TKeypress kbAlt1 = new TKeypress(false, + 0, '1', true, false, false); + public static final TKeypress kbAlt2 = new TKeypress(false, + 0, '2', true, false, false); + public static final TKeypress kbAlt3 = new TKeypress(false, + 0, '3', true, false, false); + public static final TKeypress kbAlt4 = new TKeypress(false, + 0, '4', true, false, false); + public static final TKeypress kbAlt5 = new TKeypress(false, + 0, '5', true, false, false); + public static final TKeypress kbAlt6 = new TKeypress(false, + 0, '6', true, false, false); + public static final TKeypress kbAlt7 = new TKeypress(false, + 0, '7', true, false, false); + public static final TKeypress kbAlt8 = new TKeypress(false, + 0, '8', true, false, false); + public static final TKeypress kbAlt9 = new TKeypress(false, + 0, '9', true, false, false); public static final TKeypress kbCtrlA = new TKeypress(false, 0, 'A', false, true, false); public static final TKeypress kbCtrlB = new TKeypress(false, @@ -603,7 +622,7 @@ public final class TKeypress { * Backspace as ^?. */ public static final TKeypress kbBackspaceDel = new TKeypress(false, - 0, (char)0x7F, false, false, false); + 0, (char) 0x7F, false, false, false); // ------------------------------------------------------------------------ // Variables -------------------------------------------------------------- @@ -637,7 +656,7 @@ public final class TKeypress { /** * The character received. */ - private char ch; + private int ch; // ------------------------------------------------------------------------ // Constructors ----------------------------------------------------------- @@ -653,7 +672,7 @@ public final class TKeypress { * @param ctrl if true, CTRL was pressed with this keystroke * @param shift if true, SHIFT was pressed with this keystroke */ - public TKeypress(final boolean isKey, final int fnKey, final char ch, + public TKeypress(final boolean isKey, final int fnKey, final int ch, final boolean alt, final boolean ctrl, final boolean shift) { this.isFunctionKey = isKey; @@ -718,7 +737,7 @@ public final class TKeypress { * * @return the character (only valid if isKey is false) */ - public char getChar() { + public int getChar() { return ch; } @@ -797,6 +816,18 @@ public final class TKeypress { */ @Override public String toString() { + // Special case: Enter is " " + if (equals(kbEnter)) { + return "\u25C0\u2500\u2518"; + } + + if (equals(kbShiftLeft)) { + return "Shift+\u2190"; + } + if (equals(kbShiftRight)) { + return "Shift+\u2192"; + } + if (isFunctionKey) { switch (keyCode) { case F1: