Catrobat.IDE.Core.Utilities.Helpers.ReferenceHelper.GetReferenceObject C# (CSharp) Method

GetReferenceObject() public static method

public static GetReferenceObject ( XmlObjectNode xmlObject, string reference ) : XmlObjectNode
xmlObject Catrobat.IDE.Core.Xml.XmlObjects.XmlObjectNode
reference string
return Catrobat.IDE.Core.Xml.XmlObjects.XmlObjectNode
        public static XmlObjectNode GetReferenceObject(XmlObjectNode xmlObject, string reference)
        {
            if (reference == null)
                return null;

            if (xmlObject is XmlLookReference)
                return GetLookObject(xmlObject as XmlLookReference, reference);
            if (xmlObject is XmlSoundReference)
                return GetSoundObject(xmlObject as XmlSoundReference, reference);
            if (xmlObject is XmlSpriteReference)
                return GetSpriteObject(reference);
            if (xmlObject is XmlUserVariableReference)
                return GetUserVariableObject(xmlObject as XmlUserVariableReference, reference);
            if (xmlObject is XmlLoopBeginBrickReference)
            {
                if (reference.ToLower().Contains("forever"))
                    return GetForeverBrickObject(xmlObject as XmlLoopBeginBrickReference, reference);
                else
                    return GetRepeatBrickObject(xmlObject as XmlLoopBeginBrickReference, reference);
            }
            if (xmlObject is XmlLoopEndBrickReference)
            {
                if (reference.ToLower().Contains("endless"))
                    return GetForeverLoopEndBrickObject(xmlObject as XmlLoopEndBrickReference, reference);
                else
                    return GetRepeatLoopEndBrickObject(xmlObject as XmlLoopEndBrickReference, reference);
            }
            if (xmlObject is XmlIfLogicBeginBrickReference)
                return GetIfLogicBeginBrickObject(xmlObject as XmlIfLogicBeginBrickReference, reference);
            if (xmlObject is XmlIfLogicElseBrickReference)
                return GetIfLogicElseBrickObject(xmlObject as XmlIfLogicElseBrickReference, reference);
            if (xmlObject is XmlIfLogicEndBrickReference)
                return GetIfLogicEndBrickObject(xmlObject as XmlIfLogicEndBrickReference, reference);


            return null;
        }