The extent() method in QwtAbstractScaleDraw is virtual and defaults to zero:
virtual double extent( const QFont &font ) const = 0;
I believe this means that QwtDial::scaleInnerRect() is not using QwtRoundScaleDraw::extent() and is possibly a bug.
No, this is not how virtual methods work. If the object is a QwtRoundScaleDraw it doesn_t matter that you are calling the extent method from a pointer to its base class.
Bookmarks