protected virtual void FillBrowseContainer(HtmlNode node, PageBrush brush)
        {
            var browseNode = node.SelectSingleNodeEx("browse");

            if (browseNode != null)
            {
                string className = LayoutUtil.GetClassName(browseNode, "input-browse");
                className = UIUtil.GetClassName(browseNode, className);

                string proxyCode = UIUtil.GetJSONMembers(browseNode, "only", "submit");
                if (!string.IsNullOrEmpty(proxyCode))
                {
                    proxyCode = "{" + proxyCode + "}";
                }

                SealedPainter.CreateNodeCode(brush, "div", className, string.Empty, proxyCode, (pageBrush) =>
                {
                    FillBrowse(node, browseNode, pageBrush);
                },
                                             () =>
                {
                    return("data-name='browseContainer'");
                });
                //html.AppendLine(code);
            }
        }
Beispiel #2
0
        protected override void FillCoreContainer(SealedControl obj, HtmlNode node, PageBrush brush)
        {
            var hasBrowseNode = node.SelectSingleNodeEx("browse") != null;
            var coreNode      = node.SelectSingleNodeEx("core");

            if (coreNode == null)
            {
                throw new WebException("没有指定core节点");
            }
            string className = LayoutUtil.GetClassName(coreNode, "input-extend");
            string styleCode = hasBrowseNode ? "display:none;" : string.Empty;

            if (!string.IsNullOrEmpty(styleCode))
            {
                styleCode = string.Format(" style=\"{0}\"", styleCode);
            }
            SealedPainter.CreateNodeCode(brush, "div", className, styleCode, GetCoreContainerProxyCode(node), (pageBrush) =>
            {
                FillCore(obj, node, coreNode, pageBrush);
            },
                                         () =>
            {
                return("data-name='coreContainer'");
            });
            //html.AppendLine(code);
        }
        protected override void FillCode(HtmlNode node, PageBrush brush)
        {
            var className = UIUtil.GetClassName(node, "progress progressbar");

            SealedPainter.CreateNodeCode(brush, "div", className, SealedPainter.GetStyleCode(node), GetProxyCode(node), (pageBrush) =>
            {
                pageBrush.DrawLine("<div class=\"progress-bar\" role=\"progressbar\" aria-valuenow=\"0\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 0%\"></div>");
            }, () =>
            {
                return(UIUtil.GetProperiesCode(node, "id", "name"));
            });
        }
        public override void FillHtml(object obj, HtmlNode node, PageBrush brush)
        {
            UIUtil.CheckProperties(node, "id", "type");
            if (node.Attributes["name"] == null)
            {
                node.SetAttributeValue("name", node.GetAttributeValue("id", string.Empty));
            }

            SealedPainter.CreateNodeCode(brush, "div", UIUtil.GetClassName(node, "portlet box green thumbnails"), SealedPainter.GetStyleCode(node), GetProxyCode(obj, node), (pageBrush) =>
            {
                pageBrush.DrawLine("<div class=\"portlet-title\">");
                pageBrush.DrawFormat("<div class=\"caption\"><i class=\"fa fa-cogs\"></i>{0}</div>", GetLabel(node));
                pageBrush.DrawLine();
                pageBrush.DrawLine("<div class=\"tools\"><a href=\"javascript:;\" class=\"collapse\"></a></div>");
                pageBrush.DrawLine("</div>");
                pageBrush.DrawLine("<div class=\"portlet-body\" style=\"overflow: hidden;\">");
                pageBrush.DrawFormat("    <div class=\"note note-info\"><p>{0}</p></div>", GetHelp(node));
                pageBrush.DrawLine();
                pageBrush.DrawLine("    <div class=\"row\" data-name=\"thumbnails\" data-proxy=\"{give:new $$.databind()}\">");
                pageBrush.DrawLine("    <div class=\"col-lg-12 col-auto\" data-proxy=\"{loops:'items',onbind:$$.component.input.thumbnails.itemBind}\">");
                pageBrush.DrawLine("       <div class=\"thumbnail\">");
                pageBrush.DrawLine("           <img src=\"#\" />");
                pageBrush.DrawLine("           <div class=\"caption\">");
                pageBrush.DrawLine("               <h3 class=\"text-center\" data-proxy=\"{binds:{text:'name'}}\"></h3>");
                pageBrush.Draw("               <p class=\"text-center\">");

                if (node.SelectSingleNodeEx("core/upload") != null)
                {
                    pageBrush.Draw("<button class=\"btn red btn-sm thumbnails-btn-upload\">上传原图</button>");
                }
                if (node.SelectSingleNodeEx("core/cropper") != null)
                {
                    pageBrush.Draw("<button class=\"btn green btn-sm thumbnails-btn-cropper\">快捷上传</button>");
                }
                pageBrush.Draw("<button class=\"btn default btn-sm thumbnails-btn-remove\">移除图片</button>");
                pageBrush.DrawLine("</p>");
                pageBrush.DrawLine("           </div>");
                pageBrush.DrawLine("       </div>");
                pageBrush.DrawLine("   </div>");
                pageBrush.DrawLine("   </div>");
                pageBrush.DrawLine("</div>");
            }, () =>
            {
                return(UIUtil.GetProperiesCode(node, "id", "name", "data-name"));
            });

            //StringBuilder code = new StringBuilder();
            //code.AppendLine(segmentHtml);
            FillCropperHtml(obj as SealedControl, node, brush);
            FillUploadHtml(obj as SealedControl, node, brush);
            //return code.ToString();
        }
        protected override void FillCoreContainer(SealedControl obj, HtmlNode node, PageBrush brush)
        {
            string className = "input-extend";

            SealedPainter.CreateNodeCode(brush, "div", className, string.Empty, GetCoreContainerProxyCode(node), (pageBrush) =>
            {
                pageBrush.Draw("<input data-name=\"input\" type=\"hidden\" />");
            },
                                         () =>
            {
                return("data-name='coreContainer'");
            });
        }
        public virtual void FillHtml(object obj, HtmlNode node, PageBrush brush)
        {
            var className = GetContainerClassName(node);

            className = UIUtil.GetClassName(node, className);
            SealedPainter.CreateNodeCode(brush, "div", className, SealedPainter.GetStyleCode(node), GetProxyCode(obj, node), (pageBrush) =>
            {
                pageBrush.Draw(CreateWrapper(node));
                pageBrush.Draw(string.Format("<table data-name=\"dataTable\" class=\"{0}\">", UIUtil.GetClassName(node, GetTableClassName(node))));
                pageBrush.DrawLine();
                pageBrush.DrawLine(CreateThead(node));
                DrawTbody(obj as SealedControl, node, pageBrush);
                pageBrush.Draw("</table>");
            }, () =>
            {
                return(UIUtil.GetProperiesCode(node, "id", "data-name"));
            });
        }
        public virtual void FillHtml(object obj, HtmlNode node, PageBrush brush)
        {
            UIUtil.CheckProperties(node, "type");
            if (node.Attributes["name"] == null)
            {
                node.SetAttributeValue("name", node.GetAttributeValue("id", string.Empty));
            }

            SealedPainter.CreateNodeCode(brush, "div", UIUtil.GetClassName(node, string.Format("input input-{0} form-group", node.GetAttributeValue("type", string.Empty))), SealedPainter.GetStyleCode(node), GetProxyCode(obj, node), (pageBrush) =>
            {
                FillLabel(node, pageBrush);
                FillBrowseContainer(node, pageBrush);
                FillCoreContainer(obj as SealedControl, node, pageBrush);
                FillHelp(node, pageBrush);
            }, () =>
            {
                return(UIUtil.GetProperiesCode(node, "id", "name", "data-name"));
            });
        }