Если первое нажатие меньше определённого периода, то считается, что оно не длительное. Далее надо заранее знать время, после которого повторное нажатие кнопки будет считаться, как ещё одно одинарное нажатие. Пока идёт это время относительно первого нажатия, считаем нажатия. Лишь по истечении этого времени можно будет решить сколько нажатий было сделано и обрабатывать события. Лучше конечно на псевдокоде объяснить.