OK Gurkay,
To do this you need to replace the holdDelay() function with something else. You can change the name if you like. This routine will not exit until the button is pushed. However the Arduino is so fast that if you just coded this action the next time it entered this routine you would still be holding the button down from last time and it would just zip through it. So the first thing this routine must do is hold until the button is not pushed.
See if you can write it given this flow diagram:-