forked from qt-creator/qt-creator
TreeModel: takeItem should return the item
The usual Qt API for "takeXyz()" methods is to return the item that was "taken". Change-Id: Ie144051801487a301b3f13e2857735b65f58150b Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
@@ -1027,23 +1027,24 @@ void TreeModel::clear()
|
|||||||
\note The item is not destroyed, ownership is effectively passed to the caller.
|
\note The item is not destroyed, ownership is effectively passed to the caller.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void TreeModel::takeItem(TreeItem *item)
|
TreeItem *TreeModel::takeItem(TreeItem *item)
|
||||||
{
|
{
|
||||||
#if USE_MODEL_TEST
|
#if USE_MODEL_TEST
|
||||||
(void) new ModelTest(this, this);
|
(void) new ModelTest(this, this);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QTC_ASSERT(item, return);
|
QTC_ASSERT(item, return item);
|
||||||
TreeItem *parent = item->parent();
|
TreeItem *parent = item->parent();
|
||||||
QTC_ASSERT(parent, return);
|
QTC_ASSERT(parent, return item);
|
||||||
int pos = parent->m_children.indexOf(item);
|
int pos = parent->m_children.indexOf(item);
|
||||||
QTC_ASSERT(pos != -1, return);
|
QTC_ASSERT(pos != -1, return item);
|
||||||
|
|
||||||
QModelIndex idx = indexForItem(parent);
|
QModelIndex idx = indexForItem(parent);
|
||||||
beginRemoveRows(idx, pos, pos);
|
beginRemoveRows(idx, pos, pos);
|
||||||
item->m_parent = 0;
|
item->m_parent = 0;
|
||||||
parent->m_children.removeAt(pos);
|
parent->m_children.removeAt(pos);
|
||||||
endRemoveRows();
|
endRemoveRows();
|
||||||
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -291,7 +291,7 @@ public:
|
|||||||
return Utils::findOrDefault(itemsAtLevel<T>(level, start), f);
|
return Utils::findOrDefault(itemsAtLevel<T>(level, start), f);
|
||||||
}
|
}
|
||||||
|
|
||||||
void takeItem(TreeItem *item); // item is not destroyed.
|
TreeItem *takeItem(TreeItem *item); // item is not destroyed.
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void requestExpansion(QModelIndex);
|
void requestExpansion(QModelIndex);
|
||||||
|
|||||||
@@ -265,8 +265,7 @@ void GdbServerProviderModel::removeProvider(GdbServerProvider *provider)
|
|||||||
}
|
}
|
||||||
|
|
||||||
n = findNode(rootItem()->children(), provider);
|
n = findNode(rootItem()->children(), provider);
|
||||||
takeItem(n);
|
delete takeItem(n);
|
||||||
delete n;
|
|
||||||
|
|
||||||
emit providerStateChanged();
|
emit providerStateChanged();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -237,10 +237,8 @@ void CMakeToolItemModel::removeCMakeTool(const Core::Id &id)
|
|||||||
CMakeToolTreeItem *treeItem = cmakeToolItem(id);
|
CMakeToolTreeItem *treeItem = cmakeToolItem(id);
|
||||||
QTC_ASSERT(treeItem, return);
|
QTC_ASSERT(treeItem, return);
|
||||||
|
|
||||||
takeItem(treeItem);
|
delete takeItem(treeItem);
|
||||||
m_removedItems.append(id);
|
m_removedItems.append(id);
|
||||||
|
|
||||||
delete treeItem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CMakeToolItemModel::apply()
|
void CMakeToolItemModel::apply()
|
||||||
|
|||||||
@@ -412,8 +412,7 @@ void BreakHandler::deletionHelper(BreakpointModelId id)
|
|||||||
{
|
{
|
||||||
Breakpoint b = breakpointById(id);
|
Breakpoint b = breakpointById(id);
|
||||||
QTC_ASSERT(b, return);
|
QTC_ASSERT(b, return);
|
||||||
takeItem(b.b);
|
delete takeItem(b.b);
|
||||||
delete b.b;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Breakpoint BreakHandler::findWatchpoint(const BreakpointParameters ¶ms) const
|
Breakpoint BreakHandler::findWatchpoint(const BreakpointParameters ¶ms) const
|
||||||
@@ -1235,8 +1234,7 @@ void BreakHandler::changeLineNumberFromMarkerHelper(BreakpointModelId id)
|
|||||||
Breakpoint b = breakpointById(id);
|
Breakpoint b = breakpointById(id);
|
||||||
QTC_ASSERT(b, return);
|
QTC_ASSERT(b, return);
|
||||||
BreakpointParameters params = b.parameters();
|
BreakpointParameters params = b.parameters();
|
||||||
takeItem(b.b);
|
delete takeItem(b.b);
|
||||||
delete b.b;
|
|
||||||
appendBreakpoint(params);
|
appendBreakpoint(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -165,8 +165,7 @@ void DebuggerItemModel::removeCurrentDebugger()
|
|||||||
QVariant id = m_currentTreeItem->m_item.id();
|
QVariant id = m_currentTreeItem->m_item.id();
|
||||||
DebuggerTreeItem *treeItem = m_currentTreeItem;
|
DebuggerTreeItem *treeItem = m_currentTreeItem;
|
||||||
m_currentTreeItem = 0;
|
m_currentTreeItem = 0;
|
||||||
takeItem(treeItem);
|
delete takeItem(treeItem);
|
||||||
delete treeItem;
|
|
||||||
m_removedItems.append(id);
|
m_removedItems.append(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1251,8 +1251,7 @@ void WatchHandler::removeItemByIName(const QByteArray &iname)
|
|||||||
theWatcherNames.remove(item->exp);
|
theWatcherNames.remove(item->exp);
|
||||||
saveWatchers();
|
saveWatchers();
|
||||||
}
|
}
|
||||||
m_model->takeItem(item);
|
delete m_model->takeItem(item);
|
||||||
delete item;
|
|
||||||
updateWatchersWindow();
|
updateWatchersWindow();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -359,8 +359,7 @@ void KitModel::removeKit(Kit *k)
|
|||||||
if (node == m_defaultNode)
|
if (node == m_defaultNode)
|
||||||
setDefaultNode(findItemAtLevel<KitNode *>(2, [node](KitNode *kn) { return kn != node; }));
|
setDefaultNode(findItemAtLevel<KitNode *>(2, [node](KitNode *kn) { return kn != node; }));
|
||||||
|
|
||||||
takeItem(node);
|
delete takeItem(node);
|
||||||
delete node;
|
|
||||||
|
|
||||||
validateKitNames();
|
validateKitNames();
|
||||||
emit kitStateChanged();
|
emit kitStateChanged();
|
||||||
|
|||||||
@@ -259,8 +259,7 @@ void ToolChainOptionsWidget::removeToolChain(ToolChain *tc)
|
|||||||
TreeItem *parent = m_model.rootItem()->child(tc->isAutoDetected() ? 0 : 1);
|
TreeItem *parent = m_model.rootItem()->child(tc->isAutoDetected() ? 0 : 1);
|
||||||
foreach (ToolChainTreeItem *item, m_model.itemsAtLevel<ToolChainTreeItem *>(1, parent)) {
|
foreach (ToolChainTreeItem *item, m_model.itemsAtLevel<ToolChainTreeItem *>(1, parent)) {
|
||||||
if (item->toolChain == tc) {
|
if (item->toolChain == tc) {
|
||||||
m_model.takeItem(item);
|
delete m_model.takeItem(item);
|
||||||
delete item;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user