I think Q_ENUMS is more commonly together with Q_OBJECT/Q_PROPERTY declarations. Pondering a bit about exposing role enum to qm.