void loop  ()
{
  // print the string when a newline arrives:
  if (stringComplete)
  {
    Serial.println(inputString);
    printCentronics(inputString);

    // clear the string:
    inputString = "";
    stringComplete = false;
  }

  //  while (true)
  {
    if (myTouch.dataAvailable())
    {
      myTouch.read();
      x = myTouch.getX();
      y = myTouch.getY();

      if ((y >= 28) && (y <= 100)) // Disclaimer
      {
        if ((x >= 210) && (x <= 319))
        {
          printCentronics("********************");
          delay(1000);
          printCentronics("*  25 april 2015   *");
          delay(1000);
          printCentronics("*   John Sanders   *");
          delay(1000);
          printCentronics("********************");
        }
      }

      if ((y >= 28) && (y <= 58)) // Upper row
      {
        if ((x >= 10) && (x <= 40)) // Button: 1
        {
          waitForIt(10, 28, 40, 58);
          updateStr('1');
        }
        if ((x >= 50) && (x <= 80)) // Button: 2
        {
          waitForIt(50, 28, 80, 58);
          updateStr('2');
        }
        if ((x >= 90) && (x <= 120)) // Button: 3
        {
          waitForIt(90, 28, 120, 58);
          updateStr('3');
        }
        if ((x >= 130) && (x <= 160)) // Button: 4
        {
          waitForIt(130, 28, 160, 58);
          updateStr('4');
        }
        if ((x >= 170) && (x <= 200)) // Button: 5
        {
          waitForIt(170, 28, 200, 58);
          updateStr('5');
        }
      }

      if ((y >= 70) && (y <= 100)) // Center row
      {
        if ((x >= 10) && (x <= 40)) // Button: 6
        {
          waitForIt(10, 70, 40, 100);
          updateStr('6');
        }
        if ((x >= 50) && (x <= 80)) // Button: 7
        {
          waitForIt(50, 70, 80, 100);
          updateStr('7');
        }
        if ((x >= 90) && (x <= 120)) // Button: 8
        {
          waitForIt(90, 70, 120, 100);
          updateStr('8');
        }
        if ((x >= 130) && (x <= 160)) // Button: 9
        {
          waitForIt(130, 70, 160, 100);
          updateStr('9');
        }
        if ((x >= 170) && (x <= 200)) // Button: 0
        {
          waitForIt(170, 70, 200, 100);
          updateStr('0');
        }
      }

      if ((y >= 170) && (y <= 200)) // Lower row
      {
        if ((x >= 160) && (x <= 300)) // Button: Linefeed
        {
          waitForIt(160, 170, 300, 200);

          printCentronics("\n");

        }
      }

      if ((y >= 130) && (y <= 160)) // Upper row
      {
        if ((x >= 10) && (x <= 150)) // Button: Clear
        {
          waitForIt(10, 130, 150, 160);
          stCurrent[0] = '\0';
          stCurrentLen = 0;
          myGLCD.setColor(0, 0, 0);
          myGLCD.fillRect(0, 224, 319, 239);
        }

        if ((x >= 160) && (x <= 300)) // Button: Enter
        {
          waitForIt(160, 130, 300, 160);

          String tekst = "";

          if (stCurrentLen > 0)
          {
            for (x = 0; x < stCurrentLen + 1; x++)
            {
              stLast[x] = stCurrent[x];
              tekst += stCurrent[x];
            }

            Serial.println(stLast);

            stCurrent[0] = '\0';
            stCurrentLen = 0;
            /*
                        myGLCD.setColor(0, 0, 0);
                        myGLCD.fillRect(0, 208, 319, 239);
                        myGLCD.setColor(0, 255, 0);
                        myGLCD.print(stLast, LEFT, 208);
            */

            tekst = " Ingave: " + tekst;
            printCentronics(tekst);

            //Clear
            myGLCD.setColor(0, 0, 0);
            myGLCD.fillRect(0, 224, 319, 239);

          }
          else
          {
            myGLCD.setColor(255, 0, 0);
            myGLCD.print("BUFFER EMPTY", CENTER, 210);
            delay(500);
            myGLCD.print("            ", CENTER, 210);
            delay(500);
            myGLCD.print("BUFFER EMPTY", CENTER, 210);
            delay(500);
            myGLCD.print("            ", CENTER, 210);
            myGLCD.setColor(0, 255, 0);
          }
        }
      }
    }
  }
}

