void SBAPI_OnKeyDown(SBAPI.VK key, IntPtr modifier)
 {
     if (selectedTextField != this || tabTransfer)
     {
         return;
     }
     if (key == SBAPI.VK.BACKSPACE && Text.Length > 0)
     {
         Text = Text.Substring(0, Text.Length - 1);
     }
     else if (key == SBAPI.VK.RETURN)
     {
         if (NewlineAllowed && MoreCharactersAllowed())
         {
             Text += "\n";
         }
         if (OnEnter != null)
         {
             OnEnter(Text);
         }
     }
     else if (key == SBAPI.VK.TAB && NextTextField != null)
     {
         //Util.Utils.printf("Passing focus!");
         selectedTextField = NextTextField;
         RequestTotalRedraw();
         tabTransfer = true;
     }
 }
 void TPSimpleTextField_OnTap(int xPos, int yPos)
 {
     SBAPI.KeyboardCaptured = true;
     selectedTextField      = this;
 }