I think you answered a lot of my questions.
I know there are a couple of ways that widgets get parented...
"So, if you set parent in a widget - don't delete it."
How will I know this happens? Layouts.... but what others?
Also, when defining the default constructor as MainWindow(),when subclassing my objects,
is this the same as MainWindow(QWidget* parent=0)? or no.
Not sure what you mean here. Each QWidget (like main window, dialog, QLabel etc.) can act as a standalone >window if if it has no parent set. Then you are responsible for deleting it. Each widget which has a parent, will >be deleted when parent is deleted.
I mean making the qmainwindow's children of qdialog and if that would seem... like a good design choice... but considering what you said it would just make sense to make everything a stand-alone window without a parent in my case.
I changed all the QDialog/QMainWindow to a no parent constructor -- MainWindow(QWidget* parent=0)