Bon, ben j'ai commencé à jouer un peu avec la classe, et c'est bien sympa.
Si ça se trouve, y'avait moyen de faire ça simplement en Qt, mais bon:
Code:
GENERATE_ENUM_CLASS(EnumVtkDataTypes, (vtk_char, vtk_signed_char, vtk_unsigned_char,
vtk_short, vtk_unsigned_short, vtk_int, vtk_unsigned_int, vtk_long //...
))
Code:
void
QtControlMain::setupComboTypes()
{
auto combo = mainGUI::comboBox_CreateType;
auto lambdaInsert = [&](auto enumEntry)
{
combo -> addItem(EnumVtkDataTypes::toString(enumEntry) . c_str(),
QVariant::fromValue(enumEntry));
};
for (const auto &e: EnumVtkDataTypes::getVector())
lambdaInsert(e);
combo -> setCurrentIndex(0);
}
Q_DECLARE_METATYPE(EnumVtkDataTypes::Enum)