def worker():
                """The threaded function"""
                kwargs = dict(N=sg.N) if sg.first=='Dihedral' else {}

                group = sg.selected_group(**kwargs)
                dm = DataModel(group)
                dm.generate(6)

                def dinges():
                    ee = PoissonEditor(dm)
                    ee.configure_traits()

                GUI.invoke_later(dinges)