Como verificar QVariant do tipo QVariant :: UserType é o tipo esperado?
Estou escrevendo um código de teste que iterará automaticamente todos os widgets de Q_PROPERTY e algumas propriedades estão usando tipos registrados por qRegisterMetaType. Se eu quiser ler / gravar isso no QVariant, preciso usar QVariant :: UserType ao armazená-los na variante. Por enquanto, tudo bem.
Mas quando eu quero testar leituras e gravações dessas propriedades, também preciso conhecer seu tipo. Para coisas que já são tipos qt padrão, eu posso fazer isso via QVariant :: type (), mas como tenho muitos tipos de usuário, como isso seria feito?
Da API do QVariant, vi isso:
bool QVariant::canConvert ( Type t ) const
Mas tenho um pouco de dúvida se isso levará a tipos errados em caso de enumeração?
Então, qual seria a maneira infalível de verificar que tipo de usuário está armazenado no QVariant?