UNPKG

camelot-unchained

Version:
37 lines (30 loc) 1.24 kB
/** * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ import keyboardModifier from './keyboardModifier'; import dxKeyCodes from './dxKeyCodes'; class KeyBind { public primaryKeyCode: number; public primaryModifiers: keyboardModifier; public secondaryKeyCode: number; public secondaryModifiers: keyboardModifier; public default: number; public defaultModifiers: keyboardModifier; public primaryToString = (): string => { let s = ''; if (this.primaryModifiers & keyboardModifier.CTRL) s += 'CTRL + '; if (this.primaryModifiers & keyboardModifier.ALT) s += 'ALT + '; if (this.primaryModifiers & keyboardModifier.SHIFT) s += 'SHIFT + '; return s + dxKeyCodes[this.primaryKeyCode]; } public secondaryToString = (): string => { let s = ''; if (this.secondaryModifiers & keyboardModifier.CTRL) s += 'CTRL + '; if (this.secondaryModifiers & keyboardModifier.ALT) s += 'ALT + '; if (this.secondaryModifiers & keyboardModifier.SHIFT) s += 'SHIFT + '; return s + dxKeyCodes[this.secondaryKeyCode]; } } export default KeyBind;