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); }