diff --git a/tooltipfilter.cpp b/tooltipfilter.cpp --- a/tooltipfilter.cpp +++ b/tooltipfilter.cpp @@ -32,16 +32,24 @@ bool ToolTipFilter::eventFilter(QObject // prepare tooltip message QToolButton* toolButton = (QToolButton*) obj; QAction* action = toolButton->defaultAction(); - QString toolTip = action->toolTip(); + + QString toolTip; + if (action != NULL) + { + toolTip = action->toolTip(); + QKeySequence keys = action->shortcut(); + if (!keys.isEmpty()) + { + toolTip += QString(" [") + keys.toString() + "]"; + } + } + else + { + toolTip = toolButton->toolTip(); + } if (toolTip.isEmpty()) return false; - QKeySequence keys = action->shortcut(); - if (!keys.isEmpty()) - { - toolTip += QString(" [") + keys.toString() + "]"; - } - // show tooltip message QHelpEvent *helpEvent = static_cast(ev); QToolTip::showText(helpEvent->globalPos(), toolTip);