My opinion is this class should still be a Widget class. It adds a QDialog ontop of an existing view. Moving the logic to talkeditor.py is the correct idea in my opinion.