koahnig : they both return true
changsheng230 : yes indid i set it like you write with new QSignalMapper(this)
still it never gets to OpenPublishWin.
also i did put the OpenPublishWin(QString gid) under public slots:

I cannot see anything wrong with your code either, except perhaps that your signal mapper will contain more and more mappings... but maybe that's intentional? Anyway, it should only affect memory usage and eventually performance, not functionality.

The line @m_SignalMapper->setMapping(OpenPublishAction,groupID);@ adds a mapping to the mapper. It looks like you are using the same mapper every time the ShowContextMenu is called, so the mapper will contain more and more mappings. The OpenPublishAction variable is also reused, but it does not look like you are destroying the actions. This is fine if you want to add more and more actions to a menu, and have the corresponding mappings in the mapper - maybe that's what you are doing? In that case the code is probably fine. (It's a bit hard to tell what you are doing, since we cannot see the context in which this code is used.)