Is there a way to "rotate" though and enum; So that:
enum RenderMode { POINT, LINE, FILL }
renderMode = POINT;
fn(renderMode) gives LINE
fn(renderMode) gives FILL
fn(renderMode) gives POINT
and so on, in rotation.
I would normally use some sort of modulo operation on an int to do this,
but I wonder if there is another way.