示例#1
0
        protected virtual void Render(HtmlTextWriter output, TreeviewRoot root)
        {
            Assert.ArgumentNotNull((object)output, "output");
            Assert.ArgumentNotNull((object)root, "root");

            RenderRoot(output, DataSource);
        }
示例#2
0
        public TreeviewRoot GetInitialSource()
        {
            if (ID.IsNullOrEmpty(RecommendedRenderingsContext.CurrentItemID))
            {
                return(new TreeviewRoot());
            }

            if (HttpContext.Current.Cache[sourceCacheKey + RecommendedRenderingsContext.CurrentItemID.ToShortID()] != null)
            {
                return((TreeviewRoot)HttpContext.Current.Cache[sourceCacheKey + RecommendedRenderingsContext.CurrentItemID.ToShortID()]);
            }

            var root         = new TreeviewRoot();
            var searchResult = SearchService.Search(RecommendedRenderingsContext.CurrentItem, RecommendedRenderingsContext.ContentRootItem, RecommendedRenderingsContext.PlaceholderSettingsRootItem);

            if (searchResult == null)
            {
                return(root);
            }

            root.Items.AddRange(searchResult.Renderings.Select(q => RecommendedRenderingsContext.Database.GetItem(ShortID.Parse(q.RenderingID).ToID())).Where(q => q != null).ToList());

            HttpContext.Current.Cache.Insert(sourceCacheKey + RecommendedRenderingsContext.CurrentItemID.ToShortID(), root, null, DateTime.Now.AddMinutes(1), Cache.NoSlidingExpiration);

            return(root);
        }
示例#3
0
        private static void RenderRootGlyphSC7(HtmlTextWriter output, TreeviewRoot root, bool isExpanded)
        {
            Assert.ArgumentNotNull((object)output, "output");
            ImageBuilder imageBuilder = new ImageBuilder()
            {
                Class = "scContentTreeNodeGlyph"
            };

            imageBuilder.Src = !isExpanded ? "images/expand15x15.gif" : "images/collapse15x15.gif";
            output.Write(imageBuilder.ToString());
        }
示例#4
0
        private static void RenderRootGlyph(HtmlTextWriter output, TreeviewRoot root, bool isExpanded)
        {
            Assert.ArgumentNotNull((object)output, "output");
            Assert.ArgumentNotNull((object)root, "root");
            ImageBuilder imageBuilder = new ImageBuilder()
            {
                Class = "scContentTreeNodeGlyph"
            };

            imageBuilder.Src = !isExpanded ? "images/treemenu_collapsed.png" : "images/treemenu_expanded.png";
            output.Write((string)imageBuilder.ToString());
        }
示例#5
0
        private static void RenderRootIcon(HtmlTextWriter output, TreeviewRoot root)
        {
            Assert.ArgumentNotNull((object)output, "output");
            Assert.ArgumentNotNull((object)root, "item");

            ImageBuilder imageBuilder = new ImageBuilder()
            {
                Src    = root.Icon,
                Width  = 16,
                Height = 16,
                Class  = "scContentTreeNodeIcon"
            };

            imageBuilder.Render(output);
        }
示例#6
0
        private void RenderRoot(HtmlTextWriter output, TreeviewRoot root)
        {
            Assert.ArgumentNotNull((object)output, "output");
            Assert.ArgumentNotNull((object)root, "root");

            this.RenderRootBegin(output, root, root.IsExpanded);
            if (root.IsExpanded)
            {
                if (root.Items != null)
                {
                    foreach (var item in root.Items)
                    {
                        this.RenderNode(output, item);
                    }
                }
            }
            RecommendedRenderingTreeview.RenderNodeEnd(output);
        }
示例#7
0
        protected virtual void RenderRootBegin(HtmlTextWriter output, TreeviewRoot root, bool isExpanded)
        {
            Assert.ArgumentNotNull((object)output, "output");
            Assert.ArgumentNotNull((object)root, "v");
            output.Write("<div id=\"");
            output.Write(root.Value);
            output.Write("\" class=\"scContentTreeNode\">");
#if (SC72 || SC75)
            RecommendedRenderingTreeview.RenderRootGlyphSC7(output, root, isExpanded);
#else
            RecommendedRenderingTreeview.RenderRootGlyph(output, root, isExpanded);
#endif


            string str = "scContentTreeNodeNormal";
            output.Write("<a href=\"#\" class=\"" + str + "\"");
            output.Write(">");
            RecommendedRenderingTreeview.RenderRootIcon(output, root);
            output.Write("<span hidefocus=\"true\" class=\"scContentTreeNodeTitle\" tabindex='0'>{0}</span>", (object)root.DisplayName);
            output.Write("</a>");
        }