I agree with you on the hot meal option Raffles.
That said, I'm sure you appreciate that the crew went a long way to make even on the situation by offering you the Captain's meal. No doubt that this evening flight was getting to the end of their 10-11hr duty day, the delay extending that duty even further. If your departure was scheduled for 1900, the crew should have been checking-in and setting up by 1730-1800L, so by 2200L they (just like you) have gone without dinner for a long period of time.
It doesn't excuse the fact that BA should have a hot meal offered in CE, but I think what the crew (Captain) did was very generous. Great customer service! :-: