// Aseprite UI Library
// Copyright (C) 2001-2016  David Capello
//
// This file is released under the terms of the MIT license.
// Read LICENSE.txt for more information.

#ifndef UI_KEYS_H_INCLUDED
#define UI_KEYS_H_INCLUDED
#pragma once

#include "os/keys.h"

namespace ui {

  typedef os::KeyModifiers KeyModifiers;
  typedef os::KeyScancode KeyScancode;

  using os::kKeyNoneModifier;
  using os::kKeyShiftModifier;
  using os::kKeyCtrlModifier;
  using os::kKeyAltModifier;
  using os::kKeyCmdModifier;
  using os::kKeySpaceModifier;
  using os::kKeyWinModifier;
  using os::kKeyUninitializedModifier;

  using os::kKeyNil;
  using os::kKeyA;
  using os::kKeyB;
  using os::kKeyC;
  using os::kKeyD;
  using os::kKeyE;
  using os::kKeyF;
  using os::kKeyG;
  using os::kKeyH;
  using os::kKeyI;
  using os::kKeyJ;
  using os::kKeyK;
  using os::kKeyL;
  using os::kKeyM;
  using os::kKeyN;
  using os::kKeyO;
  using os::kKeyP;
  using os::kKeyQ;
  using os::kKeyR;
  using os::kKeyS;
  using os::kKeyT;
  using os::kKeyU;
  using os::kKeyV;
  using os::kKeyW;
  using os::kKeyX;
  using os::kKeyY;
  using os::kKeyZ;
  using os::kKey0;
  using os::kKey1;
  using os::kKey2;
  using os::kKey3;
  using os::kKey4;
  using os::kKey5;
  using os::kKey6;
  using os::kKey7;
  using os::kKey8;
  using os::kKey9;
  using os::kKey0Pad;
  using os::kKey1Pad;
  using os::kKey2Pad;
  using os::kKey3Pad;
  using os::kKey4Pad;
  using os::kKey5Pad;
  using os::kKey6Pad;
  using os::kKey7Pad;
  using os::kKey8Pad;
  using os::kKey9Pad;
  using os::kKeyF1;
  using os::kKeyF2;
  using os::kKeyF3;
  using os::kKeyF4;
  using os::kKeyF5;
  using os::kKeyF6;
  using os::kKeyF7;
  using os::kKeyF8;
  using os::kKeyF9;
  using os::kKeyF10;
  using os::kKeyF11;
  using os::kKeyF12;
  using os::kKeyEsc;
  using os::kKeyTilde;
  using os::kKeyMinus;
  using os::kKeyEquals;
  using os::kKeyBackspace;
  using os::kKeyTab;
  using os::kKeyOpenbrace;
  using os::kKeyClosebrace;
  using os::kKeyEnter;
  using os::kKeyColon;
  using os::kKeyQuote;
  using os::kKeyBackslash;
  using os::kKeyBackslash2;
  using os::kKeyComma;
  using os::kKeyStop;
  using os::kKeySlash;
  using os::kKeySpace;
  using os::kKeyInsert;
  using os::kKeyDel;
  using os::kKeyHome;
  using os::kKeyEnd;
  using os::kKeyPageUp;
  using os::kKeyPageDown;
  using os::kKeyLeft;
  using os::kKeyRight;
  using os::kKeyUp;
  using os::kKeyDown;
  using os::kKeySlashPad;
  using os::kKeyAsterisk;
  using os::kKeyMinusPad;
  using os::kKeyPlusPad;
  using os::kKeyDelPad;
  using os::kKeyEnterPad;
  using os::kKeyPrtscr;
  using os::kKeyPause;
  using os::kKeyAbntC1;
  using os::kKeyYen;
  using os::kKeyKana;
  using os::kKeyConvert;
  using os::kKeyNoconvert;
  using os::kKeyAt;
  using os::kKeyCircumflex;
  using os::kKeyColon2;
  using os::kKeyKanji;
  using os::kKeyEqualsPad;
  using os::kKeyBackquote;
  using os::kKeySemicolon;
  using os::kKeyUnknown1;
  using os::kKeyUnknown2;
  using os::kKeyUnknown3;
  using os::kKeyUnknown4;
  using os::kKeyUnknown5;
  using os::kKeyUnknown6;
  using os::kKeyUnknown7;
  using os::kKeyUnknown8;

  using os::kKeyFirstModifierScancode;

  using os::kKeyLShift;
  using os::kKeyRShift;
  using os::kKeyLControl;
  using os::kKeyRControl;
  using os::kKeyAlt;
  using os::kKeyAltGr;
  using os::kKeyLWin;
  using os::kKeyRWin;
  using os::kKeyMenu;
  using os::kKeyCommand;
  using os::kKeyScrLock;
  using os::kKeyNumLock;
  using os::kKeyCapsLock;

  using os::kKeyScancodes;

} // namespace ui

#endif
