Push button and 3 LEDS

Hi,

I am beginner....

And stuck with a push button and three LEDs(red, yellow, green).....

LEDs has to follow a pattern of 000, 001, 010, 011 and this change should only happen when the push button will be pressed...

Can anybody look this for me how to crack this....

The basics:

void loop(){
if (digitalRead(pushButton)==LOW){ // pin with internal pullup resistor, button closes to Gnd
ledState = ledState +1;
if (ledState == 4){ledState = 0;}  // reset to 1st state
switch (ledState){
case 0:
digitalWrite (redLed, LOW);  // LEDs with anode to pin, cathode to resistor to Gnd
digitalWrite (yellowLed, LOW);
digitalWrite (greenLed, LOW);
break;
case 1:
digitalWrite (redLed, LOW);
digitalWrite (yellowLed, LOW);
digitalWrite (greenLed, HIGH);
break;
case 2:
digitalWrite (redLed, LOW);
digitalWrite (yellowLed, HIGH);
digitalWrite (greenLed, LOW);
break;
case 3:
digitalWrite (redLed, LOW);
digitalWrite (yellowLed, HIGH);
digitalWrite (greenLed, HIGH);
break;
} // end switch:case
} // end detect button push
delay (100); // pause for button debounce
} // end loop

Leave it to you to assign signals to pins, declare variables, set up pinModes, etc.