Je sais que je peux utiliser QSignalMapper
pour appeler un emplacement avec différents paramètres basés sur la connexion. Ce que je veux accomplir est un peu différent.Signaux de carte Qt basés sur la valeur du paramètre
Nous utilisons des plugins dans notre application et différents plugins sont responsables de différents types d'objets. Nous connectons plusieurs slots, chacun implémenté dans un plugin différent, à un signal émis par l'application principale. L'un des paramètres du signal est un QString
indiquant le type d'objet associé au signal. Actuellement, nous vérifions ce paramètre dans les slots et poursuivons si le type est géré par le plugin. Cela a un inconvénient, chaque plugin fait cette vérification et je veux éviter cela si possible. Je veux connecter tous les slots au même signal, et quand le signal est émis, seul le slot approprié est appelé en fonction de la valeur de l'argument QString
, un peu comme un QSignalMapper
mais de manière différente.
Y a-t-il un mécanisme intégré pour cela? Si non, des idées sur la façon dont je peux y parvenir?
Merci d'avance.