Two QToolTip subclasses implement dynamic tooltips for
QHeader and QTable by reimplementing maybeTip(). The
constructors differ from the QToolTip constructor in having a
QHeader and a QTable respectively as the first parameter for
the constructor instead of a QWidget. This is because
we want to ensure that only headers and tables can be
passed as arguments. A QToolTipGroup can be provided as the
second argument to show tooltips in, for example a statusbar.