Not sure which PIC you're working with or what your oscillator speed is, but given a 4MHz Fosc, the instruction clock runs at 1MHz, which is 1 increment per microsecond. Prescale timer 1 with a 1:8 prescale, timer 1 will increment once every 8uS.
Timer 1 being a 16 bit timer, it will increment a total of 65,536 increments before rolling over -
65536 x 8uS = 524mS
So...1.048 seconds will pass every two overflows of timer 1. This means that timer 1 will overflow a total of 40 times in a 20 second period. So if we set up a counter with the value of 40 and we decrement this counter everytime timer 1 overflows, the counter will equal 0 by the time 20 seconds passes. Once the counter is decremented to 0, make the code check the button to see if it's pressed.