You can't have multiple inheritance from QObject
That's true, I was talking in principal, is QObject's case that would probably mean containmant (i.e QGLPushButton derives from QGLWidget and has a QPushButton).
You could have a subclass of QPushButton where you would pass a painter pointer through a constructor.
Could you explain a bit more on how you would do such a thing?
I mean, how would the QPainter be delivered to the QPushButton paintEvent?