Port to glNext and better handling of events