#include <LiquidCrystal.h>
#include <EEPROM.h>
int address = 121;
int button = 8;
int button2 = 7;
int button3 = 10;
int val;
int cccount = 0;
int press; int Y;
int display = 0;
bool editmode;
int buttonState = 0;         // current state of the button
int lastButtonState = 0;


boolean LED1State = false;
boolean LED2State = false;

long buttonTimer = 0;
long longPressTime = 250;

boolean buttonActive = false;
boolean longPressActive = false;



void setup() {
  Serial.begin(9600);


  pinMode(button, INPUT);
  pinMode(button2, INPUT);
  pinMode(button3, INPUT);


}

void loop() {
  if (digitalRead(button) == HIGH) {
    //GERRY MOD
    //editmode = false;
    //if (buttonActive == false) {
    if (buttonActive == false && (millis() - buttonTimer > 10)) {

      buttonActive = true;
      buttonTimer = millis();
      //GERRY MOD
      editmode = false;
    }

    if ((millis() - buttonTimer > longPressTime) && (longPressActive == false)) {


      longPressActive = true;
      editmode = true;

      Serial.print ("long");



    }

  } else {
    //GERRY MOD
    buttonTimer = millis();

    if (buttonActive == true) {

      if (longPressActive == true) {

        longPressActive = false;

      } else {

        LED2State = !LED2State;
        //
        Serial.print ("short");


      }

      buttonActive = false;

    }

  }


  //editmode=true;
  buttonState = digitalRead(button2);

  // compare the buttonState to its previous state
  if (buttonState != lastButtonState) {
    // if the state has changed, increment the counter
    if (buttonState == HIGH) {
      // if the current state is HIGH then the button went from off to on:
      //GERRY MOD
      if (editmode)
        Serial.println("edit mode");
      else

        Serial.println("on");
      // Serial.print("number of button pushes: ");

    } else {
      // if the current state is LOW then the button went from on to off:
      Serial.println("off");
    }
    // Delay a little bit to avoid bouncing
    delay(50);
  }
  // save the current state as the last state, for next time through the loop
  lastButtonState = buttonState;

}//loop