Refactor plain 'enum' to 'enum class'

Authored by thomasfischer on Nov 15 2019, 7:58 PM.

Description

Refactor plain 'enum' to 'enum class'

Refactoring most but not all 'enum's to 'enum class' instances.
Purpose is to have strongly typed and strongly scoped enums which are no
longer just fancy 'int's but real types.

Whereas using 'enum class' is recommended over plain 'enum' in modern
C++, it has the disadvantage that is does not play that well with Qt's
own QFlags as well as whenever some "enum math" is required.

Unchanged 'enum' were those used to define custom 'role's for models
(descendants of QAbstractItemModel).

Details