On this question, there\'s an answer that states:
You can use typedef to make Colour enumeration type accessible without specifying it\'s \"full name\
What you can do to get around it is to create a namespace that's the same name as the enumeration. That will effectively add the enumeration values into their own scope and you can use the name of the enumeration/namespace to refer to them. Of course it only works for enumerations that would otherwise exist in the global (or another namespace) scope.
There's also an article on this issue somewhere.