Yes, weather would be the big question here. I would have them watch the movie of Toy Story and serve popcorn or a snack with a drink. They can feel like they're at the movies, but at home. On the invitation say:
Come and join (son's name) for his featured Birthday Movie Celebration:
Movie Show Time: (Time)
Ask them to bring their favorite character from the movie.
Snack and Lunch provided
Head to the Dollar Store and buy some Popcorn Paper bags and
fill it with popcorn or goldfish. Give two choices if case one doesn't like popcorn.
Movie is over, serve Pizza and then let them play or do an activity.
Plan for some short games outside and/or a plan B for indoors.
This gives them time before cake. Then, do cake & presents.
If you feel a movie is too long, set up two or 3 stations to do something fun.
First station, buy a coloring book of Toy Story, have them color a picture to
take home. Next station, have them make a picture frame, takes pictures
of them and tell them you'll send it to them for their frame. You can insert those in the thank you cards.
And/or instead of picture frame (boys) buy some large potatoes (since it's a character in the movie) and have them
decorate their potatoe of Mr. Potatoe Head. Buy some "googly" eyes and
things like that at Michael's or Hobby Lobby.
They're four so, I'd keep it to short things and move on.
Just some ideas and I hope you get more. I love this age!