Destroys the component.
if (parentComponent() != 0)
//why can we delete all create operations if the component gets destroyed
//we need to copy the list, because we are changing it with removeAll at top
//(this made the iterators broken in the past)
QList<Component*> copiedChildrenList = d->m_allChildComponents;
copiedChildrenList.detach(); //this makes it a real copy
d = 0;