You don't need a proxy here. Simply connect to the data widget mapper's currentIndexChanged() signal with a custom slot and set the text of the label there. Also connect the same slot to the dataChanged() (and possibly modelReset()) signal of the model.