It would be nice to have some comments here explaining the difference between ```q_enums``` and ```enum```. In the scope of this PR, it looks like they're enums that are exported to QML, but the ```q_``` prefix is commonly used in Qt to represent Qt native macros, like Q_DEBUG, Q_OBJECT, Q_UNUSED, etc...