Instead of handling mouse events in another thread, you could do the painting to a pixmap in another thread and when the painting is finished, copy that pixmap to the main thread and paint it there. -- Ender EREL