change dialog show() to exec_()

for some odd reason signals and slots are not working under MacOSX when using show()