int TabWidget::pullTab(int index, TabWidget *origin) { QString name = origin->tabText(index); Tab *tab = (Tab*)origin->unregisterTab(index); int idx = addTab(tab, name, tab->isWorkTab() ? ((WorkTab*)tab)->getId() : ((ChildTab*)tab)->getId()); origin->checkEmpty(); tab->setWindowId(tabView()->getWindowId()); return idx; }