void animate(void) { if (spinning) { add_quats(lastquat, curquat, curquat); } puzzle_window->redraw(); if (solving) { if (!continueSolving()) { set_solving(0); } } if (!solving && !spinning) { Fl::set_idle(0); } }
void animate(void) { if (spinning) { add_quats(lastquat, curquat, curquat); } glutPostRedisplay(); if (solving) { if (!continueSolving()) { solving = 0; glutChangeToMenuEntry(1, "Solving", 1); glutSetWindowTitle("glpuzzle"); } } if (!solving && !spinning && !visible) { glutIdleFunc(NULL); } }