Use QSignalMapper instead of home-brewed solution