My fiance's 4 year old daughter is such a picky eater.
I'll start out with saying its very typical. Logan is exactly the same way. For the past year or so, I do this:
I attempt to cook meals with things he might like - if there is something on his plate that he hasn't eaten before I require him to take at least one bite of it before he can refuse to eat it. If he doesn't try a bit, then he isn't allowed any snacks until he has eaten his dinner. Logan has been surprised to find that he actually likes a few of the things that I make - like a chicken dish which is now one of his favorites. We still struggle with things like rice - but I still have him take at least one bite. Then I provide other foods I know he'll eat like fruits, corn, raw veggies, yogurt, cottage cheese, ect. that way he has things he WILL eat.. and then things I want him to TRY. Its the best approach I've found so far. I will warn you though - I think he ends up liking about 1 out of every 5 foods I make him try... and just because he likes it one day, doesn't mean he will the next time. I think I read it takes a child 10 times of trying a new food before they become accustomed to it.
I never pushish for not eating food though. If its a meal - and he doesn't eat it, then he doesn't get any snacks/treats until the next meal time... There are many times he'll go back and eat dinner after a 1/2 hour when he's starving. LOL Though, I've had to give him limits on time for his dinner eating window. LOL No food once he goes to bed. He had tried waiting until bedtime to cry about being hungry... I put an end to that. lol
I think, with age, kids will eat more. We all do, right? I've heard from my mother and friend's mothers that around this age we all only ate a few things too. But any encouragement you can give, the better, right? :)