factorisation des addPropertyChangeListener avec switch