PS I have exhaustively tried various things to try and get the initial drawings to appear, calling flush immediately after redraw for example, or calling process events both before and after. I have also tried process_graphical_events in various combinations with the others and alone. None of them make any difference to the problem. I even tried using a pixmap instead of a EV_DRAWABLE_AREA but for some strange reason all the colors went to monochrome.