C++ (Qt) QHash<IdType, TreeNode*> _history; QList <TreeNode*> _historyOrder;
C++ (Qt)TreeNode* nodePtr = _history[id];
C++ (Qt) _history.insert(newId, newNodePtr ); _historyOrder.append(newNode);
C++ (Qt) _history.remove(nodePtr->id); _historyOrder.removeOne(nodePtr);