The professional colleague? I broke his hold - more or less reflexively, and stingingly - and wondered whether I needed to introduce his face to a nearby wall. Not that I said anything, and I doubt he had the background to really read the stance change, but he clearly got the "that was a really terrible idea" and backed off. It honestly didn't occur to me to press charges.* He's in a different department, and so he's not someone I have to deal with on a regular basis, which helps. (This was just a couple of years ago. Though I think he might have moved on, as I haven't seen him in a year or so.)
I wonder a bit more about the groping in social situations, to be honest. I mean, at the time - this was mostly a decade or more back** I had a fairly well established reputation as someone to treat with respect, and it was socially considered kind of funny that occasionally someone would push the line and I would firmly and somewhat painfully explain to him the error of his ways. It was downright hilarious that there was one guy who was such an idiot as to try it twice. This was back when I still worked in industry, and seriously, while I rarely dealt with coworkers with inappropriate touching issues, dealing with (mostly mild) inappropriate behavior from male coworkers was really common, I was good at it, and saw that kind of toughness as part of doing well as a woman in software - especially in a leadership role. (And yes, I'm skipping back and forth between social and work responses - but then, I worked a lot, most of my friends were also in software, and each response shaped the other.)
Now, looking at that all, I think my approach doesn't port and doesn't scale. I mean, I'm tall, muscular, socially confident, a trained martial artist***... and mostly what the more clueless guys seemed to get from our interactions was not to push the line *with me.* Most of my fellow geek women are smaller, shyer and not as well trained for these situations. (And less used to having to get into people's faces on a regular basis. One of the things I enjoy most about not being in software is that research gives me so much more room to be a nice person...)
Other than refusing to have anything to do with social contexts that don't throw folks out for that kind of behavior, though I'm not entirely certain what to do. I mean, when is it appropriate to press charges? When will you be taken seriously (considering how hard it is to get taken seriously for a rape charge much of the time "someone grabbed my tit at a party" seems like a non-starter). And, of course, there are all the semi-social things - say, geek conferences that one attends on one's own time.
BTW - on that whole "Men are expected to make the advances..." So, I know there's generally speaking an expectation there (and I know that a number of my female research students don't follow it). But personally, I've initiated the majority of relationships (and, for that matter, one night stands) I've been in. So it's really frustrating when I hear this kind of thing brought up in the context of bad male behavior (especially since considering my generally social affect it's hard to imagine anyone convincing themself I was playing the coquette).
* Okay, truth, I was more thinking of things like dislocating his elbow. And whether I was going to survive my time in Ohio, which has a lot more rampant street harassment, without doing someone serious bodily harm. And I don't tend to hurt people as a first response, and de-escalation is pretty deeply engrained, but yeesh - I mean, clearly I want people calling obscenities at me, I went out wearing my breasts.
** I don't get out much, between the research and martial arts, and most of the parties I do attend will throw people out for that kind of behavior and make sure they're never invited back.
*** And I still run into some of this shit, and doesn't that say something right there?