XSICollection.Remove

Description

Removes a single item from the collection. Compare this method to XSICollection.RemoveItems, which removes one or more items at a time and XSICollection.RemoveAll which empties the collection completely.

C# Syntax

Object XSICollection.Remove( Object in_newVal );

Scripting Syntax

oReturn = XSICollection.Remove( Item );

Return Value

CollectionItem or kind of ProjectItem removed

Parameters

Parameter Type Description
Item CollectionItem, any kind of ProjectItem or String The new item being removed. This may be a generic object (CollectionItem), a specific type of object (ProjectItem) or an Object Name (string expression).

Examples

VBScript Example

Dim oColl		' object pointer for collection
Dim sSelList	' string list for selection
Dim oMember	' object pointer for members
Dim oNull		' object pointer for null object
Dim oCollItem	' object pointer for collection item
Dim sLightName	' string variable for the camera name 
' Create the new collection & populate it
Set oColl = CreateObject( "XSI.Collection" )
Set oNull = ActiveSceneRoot.AddNull	
oColl.SetAsText oNull & ",Light,Camera"
' Test contents & type
checkContents oColl
For Each oMember In oColl
	checkType oMember
Next
' Now remove some stuff
LogMessage "----------------"
checkType oNull				' = project item
oColl.Remove oNull
checkContents oColl
Set oCollItem = oColl.Item( "Camera" )
checkType oCollItem			' = collection item
oColl.Remove oCollItem
checkContents oColl
sLightName = "light"			
checkType sLightName			' = string expression
oColl.Remove sLightName
checkContents oColl
'--------------------------------------------------
function checkType( in_object )
	LogMessage in_object & " is a " & TypeName( in_object )
end function
'--------------------------------------------------
function checkContents( in_coll )
	If in_coll.Count > 0 Then
		LogMessage "Collection now contains " & in_coll.GetAsText 
		LogMessage "----------------"
	Else
		LogMessage "Collection is empty."
		LogMessage "----------------"
	End If
end function
'--------------------------------------------------
' Output of above script:
'INFO : "Collection now contains null,light,Camera"
'INFO : "----------------"
'INFO : "null is a Null"
'INFO : "light is a Light"
'INFO : "Camera is a Camera"
'INFO : "----------------"
'INFO : "null is a Null"
'INFO : "Collection now contains light,Camera"
'INFO : "----------------"
'INFO : "Camera is a Camera"
'INFO : "Collection now contains light"
'INFO : "----------------"
'INFO : "light is a String"
'INFO : "Collection is empty."
'INFO : "----------------"

See Also

XSICollection.RemoveAll XSICollection.RemoveItems