Exemplo n.º 1
0
        /// <summary>
        /// Gets the virtual nodes.
        /// </summary>
        /// <param name="extender">The extender.</param>
        /// <returns></returns>
        private IEnumerable <SiteMapNode> GetVirtualNodes(IBreadcrumExtender extender)
        {
            if (extender == null)
            {
                return(Enumerable.Empty <SiteMapNode>());
            }

            return(extender.GetVirtualNodes(this.SiteMapProvider));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Creates the view model.
        /// </summary>
        /// <param name="virtualNodes">The virtual nodes.</param>
        /// <returns></returns>
        public virtual BreadcrumbViewModel CreateViewModel(IBreadcrumExtender extender)
        {
            Tuple <bool, List <SiteMapNode> > result = this.GetBreadcrumbDataSource();

            result.Item2.AddRange(this.GetVirtualNodes(extender));

            return(new BreadcrumbViewModel(result.Item2)
            {
                ShowCurrentPageInTheEnd = this.ShowCurrentPageInTheEnd,
                IsTemplateRendered = !result.Item1,
                CssClass = this.CssClass
            });
        }
Exemplo n.º 3
0
        /// <summary>
        /// Creates the view model.
        /// </summary>
        /// <param name="extender">The object used for retrieving the breadcrump datasources.</param>
        /// <returns></returns>
        public virtual BreadcrumbViewModel CreateViewModel(IBreadcrumExtender extender)
        {
            Tuple <bool, List <SiteMapNode> > result = this.GetBreadcrumbDataSource();

            if (this.AllowVirtualNodes)
            {
                result.Item2.AddRange(this.GetVirtualNodes(extender));
                var virtualNodes = this.GetMvcDetailWidgetVirtualNodes();
                if (virtualNodes != null)
                {
                    virtualNodes = virtualNodes.Where(n => !result.Item2.Contains(n));
                    result.Item2.AddRange(virtualNodes);
                }
            }

            return(new BreadcrumbViewModel(result.Item2)
            {
                ShowCurrentPageInTheEnd = this.ShowCurrentPageInTheEnd,
                IsTemplateRendered = !result.Item1,
                CssClass = this.CssClass
            });
        }
Exemplo n.º 4
0
        /// <summary>
        /// Gets the virtual nodes.
        /// </summary>
        /// <param name="extender">The extender.</param>
        /// <returns></returns>
        private IEnumerable<SiteMapNode> GetVirtualNodes(IBreadcrumExtender extender)
        {
            if (extender == null || !this.AllowVirtualNodes)
            {
                return Enumerable.Empty<SiteMapNode>();
            }

            return extender.GetVirtualNodes(this.SiteMapProvider);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Creates the view model.
        /// </summary>
        /// <param name="virtualNodes">The virtual nodes.</param>
        /// <returns></returns>
        public virtual BreadcrumbViewModel CreateViewModel(IBreadcrumExtender extender)
        {
            Tuple<bool, List<SiteMapNode>> result = this.GetBreadcrumbDataSource();

            result.Item2.AddRange(this.GetVirtualNodes(extender));

            return new BreadcrumbViewModel(result.Item2)
            {
                ShowCurrentPageInTheEnd = this.ShowCurrentPageInTheEnd,
                IsTemplateRendered = !result.Item1,
                CssClass = this.CssClass
            };
        }