public bool ShouldNestContents(SceneNode node)
        {
            SceneElement sceneElement = node as SceneElement;

            if (sceneElement == null || this.CanAddMultipleItems)
            {
                return(false);
            }
            ISceneInsertionPoint defaultInsertionPoint = sceneElement.DefaultInsertionPoint;

            if (defaultInsertionPoint == null)
            {
                return(false);
            }
            foreach (SceneNode sceneNode in (IEnumerable <SceneNode>) this.DestinationCollection)
            {
                if (!defaultInsertionPoint.CanInsert((ITypeId)sceneNode.Type))
                {
                    return(false);
                }
            }
            return(sceneElement.IsCollectionProperty((IPropertyId)sceneElement.DefaultContentProperty) || sceneElement.DefaultContent.Count <= 0);
        }