public event paintRequested as PaintEvent
Paint request event emitted by notifyPaintRequested.
Subclasses that override paint may still call notifyPaintRequested(painter) when they want observer-style painting.
canvas.paintRequested += lambda(e: PaintEvent): print(e.width)