void MainWindow::addItem() { bool ok; QString text = QInputDialog::getText(this, tr("New Item"), tr("New Item:"), QLineEdit::Normal, "", &ok); if (ok && !text.isEmpty()) { if (m_pItem == nullptr) { QStringList lst = {text}; QTreeWidgetItem *item = new QTreeWidgetItem(static_cast<QTreeWidget *>(nullptr), lst); ui->treeWidget->addTopLevelItem(item); } else { QTreeWidgetItem *newItem = new QTreeWidgetItem(m_pItem); newItem->setText(0, text); m_pItem->setExpanded(true); } } }