The Cellar Door bar at zero aldwych is amazing for cocktails - it's a bit, um, quirky at times but it's in converted public loos (looks like a bus shelter outside the Lyceum where the Lion King is on) and is worth a visit.
The American Bar at the Savoy I thought was disgusting - felt like I was on a ferry. The Champagne Bar is much nicer.
How much are you looking to spend?! The Champagne bar at St Pancras is great too, and Pret-a-Portea at the Berkeley is really fun.
Top Table is wonderful for stuff like this. Anywhere in the D&D group of restaurants (the Orrery especially) is wonderful for a good night out.
Marylebone High Street is good for shopping and much less stressful than Oxford Street.
The Courtauld Gallery at Somerset House is surprisingly good for something so unhyped.
There are day release tickets for all the big theatres - just turn up first thing in the morning or ask your hotel. I'm a huge fan of the Royal Opera House but might not be your thing...
Online shopping - theoutnet is amazing. A lot of it is along the lines of "oooh a dress with 75% off...oh, it's still £3000" but they have some amazing bargains (I got a dress for £35 down from £118 the other day).
So jealous! For tea and cake you have absolutely got to go to Konditor and Cook. They have a few shops around - there is one on Stamford Street (just near the London Eye) which is my favourite.
And the restaurant Canteen is amazing for lazy brunches. I've been to the one on Baker Street and the one underneath Royal Festival Hall which is my regular spot when I'm in town.
Borough Market isn't open every day I don't think but really good to mooch around and fill up on free samples try something new.
If you're south of the river, there is a great little restaurant called the Laughing Gravy just south of Blackfriar's Bridge (straight over the bridge to Southwark tube and just a bit further down) which is small and cosy and just exactly the sort of place I want to go to every night. The food's amazing and the staff are so lovely.
Sorry, might have got a bit carried away there...