It seems this constructor directly shows something on the screen? I would prefer if constructor of object and display  of widget is decoupled. Like dialogs etc., you would normally first construct it, and then later call ".show()", ".setVisible(true)" or similar method on them.