ICabNode::Insert Method
Inserts a new subnode into the container node.
Syntax
HRESULT Insert([in, optional] VARIANT itemIdentity, [in, defaultvalue(dt_Invalid)] CabDataTypeID nType, [out, retval] ICabNode** pNode);
Parameters
- itemIdentity
- [in, optional] VARIANT.
Specifies the new node position. For array containers it is interpreted as an integer index the new node has to be inserted before. For dictionary containers it specifies a string key to associate with the new node. If the dictionary already has a node with this key, the existing node will be returned.
- nType
- [in, defaultvalue(dt_Invalid)] Value of CabDataTypeID.
Specifies the node type.
For templatized containers the type is checked against the container template.
When itemIdentity
identifies an existing dictionary node, the type is checked against the existing node type.
If the type value is dt_Undefined
, the type check semantics is actually a type resolution - the resulting node type is the type the checking is made against.
- pNode
- [out, retval] Pointer to ICabNode.
The address of a pointer variable that receives the pointer to the resulting cab node.
Return Value
Returns S_OK if operation was successful or error code in other cases.