context: using Microsoft.Xna.Framework.Input;
  
  namespace Alex.Utils
  {
  	public static class KeysExtension
  	{
  		public static bool IsSpecialKey(this Keys keyInput)
  		{
  			return false;
  		}
  		public static bool TryConvertKeyboardInput(this Keys keyInput, out char key)
  		{
  			switch (keyInput)
  			{
  				//Alphabet keys
  				case Keys.A:
  					key = 'a';
  
  
  					return true;
  
  				case Keys.B:
  
  					key = 'b';
  
  					return true;
  
  				case Keys.C:
  
  					key = 'c';
  
  
  					return true;
  
  				case Keys.D:
  
  					key = 'd';
  
  
  					return true;
  
  				case Keys.E:
  
  					key = 'e';
  
  
  					return true;
  
  				case Keys.F:
  
  					key = 'f';
  
  
  					return true;
  
  				case Keys.G:
  
  					key = 'g';
  
  
  					return true;
  
  				case Keys.H:
  
  					key = 'h';
  
  
  					return true;
  
  				case Keys.I:
  
  					key = 'i';
  
  
  					return true;
  
  				case Keys.J:
  
  					key = 'j';
  
  
  					return true;
  
  				case Keys.K:
  
  					key = 'k';
  
  
  					return true;
  
  				case Keys.L:
  
  					key = 'l';
  
  
  					return true;
  
  				case Keys.M:
  
  					key = 'm';
  
  
  					return true;
  
  				case Keys.N:
  
  					key = 'n';
  
  
  					return true;
  
  				case Keys.O:
  
  					key = 'o';
  
  
  					return true;
  
  				case Keys.P:
  					key = 'p';
  
  
  					return true;
  
  				case Keys.Q:
  					key = 'q';
  
  
  					return true;
  
  				case Keys.R:
  
  					key = 'r';
  
  
  					return true;
  
  				case Keys.S:
  
  					key = 's';
  
  
  					return true;
  
  				case Keys.T:
  
  					key = 't';
  
  
  					return true;
  
  				case Keys.U:
  
  					key = 'u';
  
  
  					return true;
  
  				case Keys.V:
  
  					key = 'v';
  
  
  					return true;
  
  				case Keys.W:
  
  					key = 'w';
  
  
  					return true;
  
  				case Keys.X:
  
  					key = 'x';
  
  					return true;
  
  				case Keys.Y:
  
  					key = 'y';
  
  					return true;
  
  				case Keys.Z:
  
  					key = 'z';
  
  					return true;
  
  				//Decimal keys
  				case Keys.D0:
  
  					key = '0';
  
  					return true;
  
  				case Keys.D1:
  					key = '1';
  
  
  					return true;
  
  				case Keys.D2:
  
  					key = '2';
  
  					return true;
  
  				case Keys.D3:
  
  					key = '3';
  
  					return true;
  
  				case Keys.D4:
  
  					key = '4';
  
  					return true;
  
  				case Keys.D5:
  
  					key = '5';
  
  
  					return true;
  
  				case Keys.D6:
  
  					key = '6';
  
  					return true;
  
  				case Keys.D7:
  
  					key = '7';
  
  
  					return true;
  
  				case Keys.D8:
  					key = '8';
  
  					return true;
  
  				case Keys.D9:
  					key = '9';
  
  					return true;
  
  				//Decimal numpad keys
  				case Keys.NumPad0:
  					key = '0';
  
  					return true;
  
  				case Keys.NumPad1:
  					key = '1';
  
  					return true;
  
  				case Keys.NumPad2:
  					key = '2';
  
  					return true;
  
  				case Keys.NumPad3:
  					key = '3';
  
  					return true;
  
  				case Keys.NumPad4:
  					key = '4';
  
  					return true;
  
  				case Keys.NumPad5:
  					key = '5';
  
  					return true;
  
  				case Keys.NumPad6:
  					key = '6';
  
  					return true;
  
  				case Keys.NumPad7:
  					key = '7';
  
  					return true;
  
  				case Keys.NumPad8:
  					key = '8';
  
  					return true;
  
  				case Keys.NumPad9:
  					key = '9';
  
  					return true;
  			}
  
  
gt: 			key = (char) 0;