charToDirectInputKey property
A mapping of characters to DirectInputKey for direct input key conversion.
This map is used to map individual characters (e.g., 'A', 'a', '1', etc.) to their corresponding DirectInputKey enum value.
Implementation
static Map<String, DirectInputKey> charToDirectInputKey = {
// Numeric
'0': DirectInputKey.digit0,
'1': DirectInputKey.digit1,
'2': DirectInputKey.digit2,
'3': DirectInputKey.digit3,
'4': DirectInputKey.digit4,
'5': DirectInputKey.digit5,
'6': DirectInputKey.digit6,
'7': DirectInputKey.digit7,
'8': DirectInputKey.digit8,
'9': DirectInputKey.digit9,
// Uppercase Letters
'A': DirectInputKey.letterA,
'B': DirectInputKey.letterB,
'C': DirectInputKey.letterC,
'D': DirectInputKey.letterD,
'E': DirectInputKey.letterE,
'F': DirectInputKey.letterF,
'G': DirectInputKey.letterG,
'H': DirectInputKey.letterH,
'I': DirectInputKey.letterI,
'J': DirectInputKey.letterJ,
'K': DirectInputKey.letterK,
'L': DirectInputKey.letterL,
'M': DirectInputKey.letterM,
'N': DirectInputKey.letterN,
'O': DirectInputKey.letterO,
'P': DirectInputKey.letterP,
'Q': DirectInputKey.letterQ,
'R': DirectInputKey.letterR,
'S': DirectInputKey.letterS,
'T': DirectInputKey.letterT,
'U': DirectInputKey.letterU,
'V': DirectInputKey.letterV,
'W': DirectInputKey.letterW,
'X': DirectInputKey.letterX,
'Y': DirectInputKey.letterY,
'Z': DirectInputKey.letterZ,
// Lowercase Letters
'a': DirectInputKey.lettera,
'b': DirectInputKey.letterb,
'c': DirectInputKey.letterc,
'd': DirectInputKey.letterd,
'e': DirectInputKey.lettere,
'f': DirectInputKey.letterf,
'g': DirectInputKey.letterg,
'h': DirectInputKey.letterh,
'i': DirectInputKey.letteri,
'j': DirectInputKey.letterj,
'k': DirectInputKey.letterk,
'l': DirectInputKey.letterl,
'm': DirectInputKey.letterm,
'n': DirectInputKey.lettern,
'o': DirectInputKey.lettero,
'p': DirectInputKey.letterp,
'q': DirectInputKey.letterq,
'r': DirectInputKey.letterr,
's': DirectInputKey.letters,
't': DirectInputKey.lettert,
'u': DirectInputKey.letteru,
'v': DirectInputKey.letterv,
'w': DirectInputKey.letterw,
'x': DirectInputKey.letterx,
'y': DirectInputKey.lettery,
'z': DirectInputKey.letterz,
// Special Characters
' ': DirectInputKey.space,
'!': DirectInputKey.exclamation,
'"': DirectInputKey.doubleQuote,
'#': DirectInputKey.hash,
'\$': DirectInputKey.dollar,
'%': DirectInputKey.percent,
'&': DirectInputKey.ampersand,
'\'': DirectInputKey.singleQuote,
'(': DirectInputKey.openParen,
')': DirectInputKey.closeParen,
'*': DirectInputKey.asterisk,
'+': DirectInputKey.plus,
',': DirectInputKey.comma,
'-': DirectInputKey.minus,
'.': DirectInputKey.period,
'/': DirectInputKey.slash,
':': DirectInputKey.colon,
';': DirectInputKey.semicolon,
'<': DirectInputKey.lessThan,
'=': DirectInputKey.equal,
'>': DirectInputKey.greaterThan,
'?': DirectInputKey.questionMark,
'@': DirectInputKey.atSymbol,
'[': DirectInputKey.openBracket,
'\\': DirectInputKey.backslash,
']': DirectInputKey.closeBracket,
'^': DirectInputKey.caret,
'_': DirectInputKey.underscore,
'`': DirectInputKey.backtick,
'{': DirectInputKey.openBrace,
'|': DirectInputKey.pipe,
'}': DirectInputKey.closeBrace,
'~': DirectInputKey.tilde,
// Keyboard Keys - using HT (Horizontal Tab) for special case
'\t':
DirectInputKey.ht, // HT for compatibility with Excel and other systems
'↹': DirectInputKey.tab, // The graphical representation of tab for clarity
// Control Characters for escape
'\n': DirectInputKey.lf,
'\r': DirectInputKey.cr,
'\b': DirectInputKey.bs,
};