I have to agree with this fully. Anyone who wears a baseball cap at a dinner table should be asked to remove it or leave immediately (I got a laugh out of the slap idea). I have been to restaurants in which patrons were asked to please remove their hats or turn off their cell phones. If you are really offended by something, you can mention it to your waiter and generally someone will take care of the problem. I was dining with my current girlfriend, and some guy behind us was talking and swearing loudly. I think that's the only time I have actually almost struck someone in a restaurant (he told me to mind my own business when I went to his table and asked him to stop). The management were pretty prompt in asking him to leave. Generally, if someone is too out-of-line, the staff will take care of it. Unfortunately, a person's lack of manners can ruin a nice evening for other diners.