protected override IElement OnBuild(IElementContext context)
        {
            IElementParent parent = OnBuildParent(context);

            OnBuildChildren(parent, context);

            return(parent);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ElementCollection"/> class.
        /// </summary>
        /// <param name="owner">The parent of this collection.</param>
        public ElementCollection(IElementParent owner)
        {
            this.owner = owner;

            if (owner is ElementBase e)
            {
                this.composite = new ObservableComposite <IList <Vertex> >(MakeVerticesObservable(e));
            }
            else
            {
                this.composite = new ObservableComposite <IList <Vertex> >(Observable.Never <IList <Vertex> >());
            }
        }
Ejemplo n.º 3
0
        protected virtual void OnBuildChildren(IElementParent parent, IElementContext context)
        {
            if (parent == null)
            {
                throw new ArgumentNullException(nameof(parent));
            }

            for (int i = 0; i < m_children.Count; i++)
            {
                ElementBuilderAsset builder = m_children[i];
                IElement            child   = builder.Build(context);

                parent.Children.Add(child);
            }
        }