Esempio n. 1
0
        private static void WriteTemplates(HtmlNode node, PageBrush brush)
        {
            brush.DrawLine("templates:[");
            var templates = node.SelectNodesEx("templates/add");

            foreach (HtmlNode item in templates)
            {
                string title       = item.GetAttributeValue("title", string.Empty);
                string description = item.GetAttributeValue("description", string.Empty);
                string content     = item.GetAttributeValue("content", string.Empty);
                string url         = item.GetAttributeValue("url", string.Empty);
                brush.Draw("{");
                if (!string.IsNullOrEmpty(title))
                {
                    brush.DrawFormat("title:\"{0}\",", title);
                }
                if (!string.IsNullOrEmpty(title))
                {
                    brush.DrawFormat("description:\"{0}\",", description);
                }
                if (!string.IsNullOrEmpty(title))
                {
                    brush.DrawFormat("content:\"{0}\",", content);
                }
                if (!string.IsNullOrEmpty(title))
                {
                    brush.DrawFormat("url:\"{0}\",", url);
                }
                brush.Draw("},");
            }

            //if (templates.Count > 0) html.Length--;

            brush.DrawLine("],");
        }
Esempio n. 2
0
 private void DrawActions(PageBrush brush, List list)
 {
     if (ShowCommand(list))
     {
         brush.Draw("<td data-actions='true' class=\"list-actions\" style=\"text-align:center;white-space:nowrap;width:220px;\">");
         if (list.AllowAdd)
         {
             brush.DrawFormat("<a href=\"javascript:;\" class=\"btn m-btn m-btn--hover-info m-btn--icon m-btn--icon-only m-btn--pill\" title=\"{0}\" data-name=\"addItem\"><i class=\"la la-plus\"></i></a>", Strings.NewRow);
         }
         if (list.AllowMove)
         {
             brush.DrawFormat("<a href=\"javascript:;\" class=\"btn m-btn m-btn--hover-primary m-btn--icon m-btn--icon-only m-btn--pill\" title=\"{0}\" data-name=\"prevItem\"><i class=\"la la-arrow-up\"></i></a>", Strings.MoveUp);
             brush.DrawFormat("<a href=\"javascript:;\" class=\"btn m-btn m-btn--hover-primary m-btn--icon m-btn--icon-only m-btn--pill\" title=\"{0}\" data-name=\"nextItem\"><i class=\"la la-arrow-down\"></i></a>", Strings.MoveDown);
         }
         if (list.AllowRest)
         {
             brush.DrawFormat("<a href=\"javascript:;\" class=\"btn m-btn m-btn--hover-accent m-btn--icon m-btn--icon-only m-btn--pill\" title=\"{0}\" data-name=\"resetItem\"><i class=\"la la-refresh\"></i></a>", Strings.Reset);
         }
         if (list.AllowRemove)
         {
             brush.DrawFormat("<a href=\"javascript:;\" class=\"btn m-btn m-btn--hover-danger m-btn--icon m-btn--icon-only m-btn--pill\" title=\"{0}\" data-name=\"removeItem\"><i class=\"la la-close\"></i></a>", Strings.Remove);
         }
         brush.Draw("</td>");
         brush.DrawLine();
     }
 }
        protected override void Draw(PageBrush brush)
        {
            brush.DrawFormat(string.Format("<li><a href=\"{0}\"><i class=\"{1}\"></i> {2}</a></li>",
                this.Url, this.Icon, this.Text));

            brush.DrawLine();
        }
Esempio n. 4
0
        protected override void FillLabel(HtmlNode node, PageBrush brush)
        {
            var labelNode = node.SelectSingleNodeEx("label");

            if (labelNode == null)
            {
                brush.Draw("<label class=\"control-label\" data-name=\"label\">");
                if (ShowOperation(node))
                {
                    brush.Draw("<button class=\"btn btn-sm green\" data-name=\"addItem\"><i class=\"fa fa-plus\"></i>新增项</button>");
                }
                brush.Draw("</label>");
                return;
            }

            string className = LayoutUtil.GetClassName(labelNode, "control-label");

            brush.DrawFormat("<label class=\"{0}\" data-name=\"label\">{1}", UIUtil.GetClassName(labelNode, className), labelNode.InnerText);
            if (ShowOperation(node))
            {
                brush.Draw(" &nbsp;<button class=\"btn btn-sm green\" data-name=\"addItem\"><i class=\"fa fa-plus\"></i>新增项</button>");
            }
            brush.Draw("</label>");
            brush.DrawLine();
        }
        protected override void Draw(PageBrush brush)
        {
            var tab    = this.GetTemplateParent() as Tab;
            var panels = tab.Content;

            brush.DrawLine("<div class=\"tab-content\">");

            for (var i = 0; i < panels.Count; i++)
            {
                var panel = panels[i] as TabPanel;

                if (panel.Selected)
                {
                    brush.Draw("<div class=\"tab-pane fade active in\" ");
                }
                else
                {
                    brush.Draw("<div class=\"tab-pane fade\" ");
                }
                brush.DrawFormat("id=\"panel_{0}_{1}\">", tab.Id, i);

                foreach (UIElement c in panel.Content)
                {
                    c.Render(brush);
                }

                brush.Draw("</div>");
            }

            brush.DrawLine();
            brush.Draw("</div>");
        }
Esempio n. 6
0
        protected override void Draw(PageBrush brush)
        {
            var request = WebPageContext.Current.Request;
            var step    = this.Step;

            var query        = WebUtil.ProcessQueryString(request.QueryString);
            var baseUrl      = request.Path;
            var pageCount    = GetPageCount(this.PageSize, this.DataCount);
            var currentIndex = GetCurrentIndex(query);

            Pagination p = new Pagination(baseUrl, query, pageCount, currentIndex, this.Step, this.Anchor);

            if (pageCount < 2)
            {
                return;
            }

            StringBuilder html = new StringBuilder();

            html.AppendFormat("<div class=\"{0} pagiation-page\">", this.Class);
            html.AppendLine("<ul class=\"pagination margin-none\">");
            p.Write(html);
            html.AppendLine("</ul>");
            html.Append("</div>");

            brush.Draw(html.ToString(), DrawOrigin.Current);
        }
        protected override void Draw(PageBrush brush)
        {
            var frontCode = GetFrontCode();

            if (!string.IsNullOrEmpty(frontCode))
            {
                brush.Draw(frontCode);
            }
            var children = this.Children;

            foreach (var element in children)
            {
                var ui = element as UIElement;
                if (ui != null)
                {
                    ui.Render(brush);
                }
            }

            var behindCode = GetBehindCode();

            if (!string.IsNullOrEmpty(behindCode))
            {
                brush.Draw(behindCode);
            }
        }
        protected override void Draw(PageBrush brush)
        {
            var tab    = this.GetTemplateParent() as Tab;
            var panels = tab.Content;

            brush.DrawLine("<ul class=\"nav nav-tabs\">");

            for (var i = 0; i < panels.Count; i++)
            {
                var panel = panels[i] as TabPanel;

                if (panel.Selected)
                {
                    brush.Draw("<li class=\"active\">");
                }
                else
                {
                    brush.Draw("<li>");
                }
                brush.DrawFormat("<a href=\"#panel_{0}_{1}\" data-toggle=\"tab\">{2}</a></li>", tab.Id, i, panel.Title);
            }

            brush.DrawLine();
            brush.Draw("</ul>");
        }
        private void FillCropperHtml(SealedControl obj, HtmlNode node, PageBrush brush)
        {
            if (node.SelectSingleNodeEx("core/cropper") == null)
            {
                return;
            }
            string modalId = string.Format("selectCoverModal_cropper_{0}", node.GetAttributeValue("id", string.Empty));

            StringBuilder modal = new StringBuilder();

            modal.AppendFormat("<m:modal id=\"{0}\" size=\"full\" title=\"快捷上传\">", modalId);
            modal.AppendLine();
            modal.AppendFormat("<m:cropper maxfilesize=\"{0}\" name=\"cropper\" target=\"{1}\" disk=\"true\" allowMode=\"{2}\" id=\"cropper_{3}\"></m:cropper>",
                               //modal.AppendFormat("<ms:cropper maxfilesize=\"{0}\" target=\"{1}\" allowMode=\"{2}\" id=\"cropper_{3}\"></ms:cropper>",
                               GetCropperPara(node, "maxfilesize", "40960"),
                               GetCropperPara(node, "target", string.Empty),
                               GetCropperPara(node, "allowMode", "false"),
                               node.GetAttributeValue("id", string.Empty));
            modal.AppendLine();
            modal.AppendLine("    <m:modal.footer>");
            modal.AppendLine("        <m:button class=\"thumbnails-cropper-btn-ok\" color=\"blue\" icon=\"check\">确定上传选区图片</m:button>");
            modal.AppendLine("        <m:button color=\"default\" data-dismiss=\"modal\">取消关闭</m:button>");
            modal.AppendFormat("        <m:alert id=\"thumbnailsAlert_cropper_{0}\" style=\"margin-top:20px;\"></m:alert>", node.GetAttributeValue("id", string.Empty));
            modal.AppendLine("    </m:modal.footer>");
            modal.Append("</m:modal>");

            obj.Elements.Render(brush, modal.ToString());
        }
        private void DrawButton(PageBrush brush)
        {
            if (this.Content.Count == 1)
            {
                return;                         //1个成员的时候不显示搜索按钮
            }
            var cls = string.Empty;

            if (this.Content.Count == 2)
            {
                cls = "col-xl-4 col-md-12 m--align-right";
            }
            else
            {
                cls = "col-xl-3 col-lg-6 col-md-12 m--align-right";
            }

            brush.DrawFormat("<div class=\"{0}\">", cls);
            brush.DrawLine();
            var noneCls = this.Content.Count == 2 ? "d-xl-none" : "d-lg-none";

            brush.DrawFormat("<div class=\"m-separator m-separator--dashed {0}\"></div>", noneCls);
            brush.DrawLine();
            brush.DrawLine("<a href=\"javascript:;\" data-proxy=\"{invoke:{component:'',events:[{client:'click',server:'OnSearch',view:'',option:{}}]}}\" class=\"btn btn-primary m-btn m-btn--custom m-btn--icon m-btn--air\">");
            brush.DrawFormat("<span><i class=\"la la-search\"></i><span>{0}</span></span>", Strings.Search);
            brush.DrawLine();
            brush.DrawLine("</a>");
            brush.DrawLine("</div>");
        }
Esempio n. 11
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);
        }
Esempio n. 12
0
        private void DrawBody(PageBrush brush, List list)
        {
            brush.DrawLine("<tbody>");
            brush.DrawLine("<tr data-name=\"listItem\">");
            if (list.ShowLineNumber)
            {
                brush.DrawLine("<th style=\"width:50px; text-align:center;white-space:nowrap;\" scope=\"row\"></th>");
            }
            var columns = list.Columns;

            foreach (ListColumn column in columns)
            {
                if (string.IsNullOrEmpty(column.Width))
                {
                    brush.DrawFormat("<td style=\"text-align:{0};white-space:nowrap;\">", column.TextAlign);
                }
                else
                {
                    brush.DrawFormat("<td style=\"width:{0}; text-align:{1};white-space:nowrap;\">", column.Width, column.TextAlign);
                }
                brush.DrawLine();
                column.Content.Render(brush);
                brush.DrawLine("</td>");
            }
            DrawActions(brush, list);
            brush.DrawLine("</tr>");
            brush.DrawLine("</tbody>");
        }
Esempio n. 13
0
        private void DrawHeader(PageBrush brush, List list)
        {
            brush.DrawLine("<thead>");
            brush.DrawLine("<tr>");
            if (list.ShowLineNumber)
            {
                brush.DrawLine("<th style=\"width:50px; text-align:center;\">#</th>");
            }
            var columns = list.Columns;

            foreach (ListColumn column in columns)
            {
                if (string.IsNullOrEmpty(column.Width))
                {
                    brush.DrawFormat("<th style=\"text-align:{0};white-space:nowrap;\" nowrap=\"nowrap\">{1}</th>", column.TextAlign, column.Title);
                }
                else
                {
                    brush.DrawFormat("<th style=\"width:{0}; text-align:{1};white-space:nowrap;\">{2}</th>", column.Width, column.TextAlign, column.Title);
                }
                brush.DrawLine();
            }
            if (ShowCommand(list))
            {
                brush.DrawFormat("<th data-actions='true' style=\"text-align:center;white-space:nowrap;width:220px;\">{0}</th>", Strings.Actions);
                brush.DrawLine();
            }
            brush.DrawLine("</tr>");
            brush.DrawLine("</thead>");
        }
        protected override void DrawTbody(SealedControl obj, HtmlNode node, PageBrush brush)
        {
            brush.DrawLine("<tbody data-name=\"dataContent\" data-proxy=\"{give:new $$.databind()}\">");
            brush.DrawLine("<tr data-proxy=\"{display:'',loops:'rows'}\">");

            var selectMode = node.GetAttributeValue("select", "false");

            if (selectMode == "true")
            {
                brush.DrawLine("<td><input type=\"checkbox\" class=\"checkboxes\" value=\"1\" /></td>");
            }

            var items = node.SelectNodesEx("columns/item");

            foreach (var item in items)
            {
                if (item.InnerHtml.Length == 0)
                {
                    brush.DrawFormat("<td data-proxy=\"{0}\"{1}{2}></td>", GetSystemProxyCode(item), SealedPainter.GetFullClassName(item), SealedPainter.GetStyleCode(item));
                }
                else
                {
                    brush.DrawFormat("<td{0}{1}>", SealedPainter.GetFullClassName(item), SealedPainter.GetStyleCode(item));
                    obj.Elements.Render(brush, item.InnerHtml);
                    //brush.DrawXaml(item.InnerHtml);
                    brush.Draw("</td>");
                }
                brush.DrawLine();
            }

            brush.DrawLine("</tr>");
            brush.Draw("</tbody>");
        }
        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);
            }
        }
        public override void FillHtml(object obj, HtmlNode node, PageBrush brush)
        {
            var group = node.GetAttributeValue("group", "false");

            if (group == "false")
            {
                if (node.SelectNodesEx("//group").Count > 0)
                {
                    group = "true";                                          //如果选项中已经有group,那么必须为true
                }
            }
            node.SetAttributeValue("group", group);

            if (IsSingleLevel(node))
            {
                var emptyItem = node.GetAttributeValue("emptyItem", "true"); //默认允许有空项
                node.SetAttributeValue("emptyItem", emptyItem);
            }
            else
            {
                var emptyItem = node.GetAttributeValue("emptyItem", "false"); //默认不允许有空项
                node.SetAttributeValue("emptyItem", emptyItem);
            }

            node.SetAttributeValue("level", GetLevelCount(node).ToString());

            base.FillHtml(obj, node, brush);
        }
Esempio n. 17
0
 protected override void Draw(PageBrush brush)
 {
     if (WebPageContext.Current.IsMobileDevice)
     {
         return;
     }
     base.Draw(brush);
 }
Esempio n. 18
0
        protected virtual void FillControl(HtmlNode node, HtmlNode coreNode, PageBrush brush)
        {
            string placeholder = node.GetAttributeValue("placeholder", string.Empty);
            string multiple    = node.GetAttributeValue("multiple", "false");

            brush.DrawFormat("<select class=\"form-control\" data-placeholder=\"{0}\"{1}>", placeholder, (multiple == "true" ? " multiple" : string.Empty));
            brush.DrawLine();
            brush.DrawLine("<option data-name='option' data-proxy=\"{loops:'items',display:'',binds:{'value':'value','text':'text'}}\"></option>");
            brush.Draw("</select>");
        }
Esempio n. 19
0
        protected override void Draw(PageBrush brush)
        {
            var owner = GetOwner();

            if (owner == null)
            {
                return;
            }
            owner.ItemsPanel.Render(brush);
        }
Esempio n. 20
0
        private static void WriteFont(HtmlNode node, PageBrush brush)
        {
            string fontFamily = node.GetAttributeValue("fontFamily", _defaultFontFamily);
            string fontSize   = node.GetAttributeValue("fontSize", _defaultFontSize);

            brush.DrawFormat("font_formats: \"{0}\",", fontFamily);
            brush.DrawLine();
            brush.DrawFormat("fontsize_formats: \"{0}\",", fontSize);
            brush.DrawLine();
        }
Esempio n. 21
0
 protected override void Draw(PageBrush brush)
 {
     if (this.Template == null)
     {
         this.Content.Render(brush);
     }
     else
     {
         this.Template.Render(brush);
     }
 }
Esempio n. 22
0
        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"));
            });
        }
Esempio n. 23
0
        private static void WriteContentCss(HtmlNode node, PageBrush brush)
        {
            string        contentCss = node.GetAttributeValue("contentCss", string.Empty);
            StringBuilder path       = new StringBuilder("/assets/tinymce/css/content.css");

            if (!string.IsNullOrEmpty(contentCss))
            {
                path.AppendFormat(",{0}", contentCss);
            }
            brush.DrawFormat("content_css: \"{0}\"", path.ToString());
            brush.DrawLine();
        }
Esempio n. 24
0
 protected override void Draw(PageBrush brush)
 {
     base.Draw(brush);
     for (var i = 0; i < this.Columns.Count; i++)
     {
         var column = this.Columns[i] as DataTableColumn;
         if (column.Content.Count > 0)
         {
             DrawColumnTemplate(column.Content, i, brush);
         }
     }
 }
        private void FillUploadHtml(SealedControl obj, HtmlNode node, PageBrush brush)
        {
            if (node.SelectSingleNodeEx("core/upload") == null)
            {
                return;
            }
            string modalId = string.Format("selectCoverModal_upload_{0}", node.GetAttributeValue("id", string.Empty));

            StringBuilder modal = new StringBuilder();

            modal.AppendFormat("<m:modal id=\"{0}\" size=\"full\" title=\"选择封面文件\">", modalId);
            modal.AppendLine();
            modal.AppendLine("        <bootform type=\"horizontal\" class=\"form-row-seperated thumbnails-form\">");
            modal.AppendFormat("            <m:upload name=\"upload\" class=\"thumbnails-input-cover\" max=\"1\" maxfilesize=\"{0}\" disk=\"true\" target=\"{1}\" extensions=\"(\\.|\\/)(gif|jpe?g|png)$\"  id=\"upload_{2}\">",
                               //modal.AppendFormat("            <ms:input class=\"thumbnails-input-cover\" type=\"upload\" max=\"1\" maxfilesize=\"{0}\" target=\"{1}\" extensions=\"(\\.|\\/)(gif|jpe?g|png)$\"  id=\"upload_{2}\">",
                               GetUploadPara(node, "maxfilesize", "40960"), GetUploadPara(node, "target", string.Empty), node.GetAttributeValue("id", string.Empty));
            modal.AppendLine();
            modal.AppendLine("                <m:inputLabel xs=\"12\" sm=\"3\">图片文件</m:inputLabel>");
            modal.AppendLine("                <m:inputCore xs=\"12\" sm=\"8\"></m:inputCore>");
            modal.AppendLine("                <m:inputHelp sm=\"8\" sm-offset=\"3\"></m:inputHelp>");
            modal.AppendLine("            </m:upload>");
            modal.AppendLine("        </bootform>");
            modal.AppendLine("    <m:modal.footer style=\"border-top:none;\">");
            modal.AppendLine("        <m:button class=\"thumbnails-upload-btn-ok\" color=\"blue\" icon=\"check\">确定</m:button>");
            modal.AppendLine("        <m:button color=\"default\" data-dismiss=\"modal\">取消</m:button>");
            modal.AppendFormat("        <m:alert id=\"thumbnailsAlert_upload_{0}\" style=\"margin-top:20px;\"></m:alert>", node.GetAttributeValue("id", string.Empty));
            modal.AppendLine();
            modal.AppendLine("    </m:modal.footer>");
            modal.Append("</m:modal>");

            obj.Elements.Render(brush, modal.ToString());

            //brush.DrawFormat("<metro:modal id=\"{0}\" width=\"80%\" title=\"选择封面文件\">", modalId);
            //brush.DrawLine();
            //brush.DrawLine("    <body class=\"form\">");
            //brush.DrawLine("        <boot:form type=\"horizontal\" class=\"form-row-seperated thumbnails-form\">");
            //brush.DrawFormat("            <metro:input class=\"thumbnails-input-cover\" type=\"upload\" max=\"1\" maxfilesize=\"{0}\" disk=\"true\" target=\"{1}\" extensions=\"(\\.|\\/)(gif|jpe?g|png)$\"  id=\"upload_{2}\">",
            //                            GetUploadPara(node, "maxfilesize", "40960"), GetUploadPara(node, "target", string.Empty), node.GetAttributeValue("id", string.Empty));
            //brush.DrawLine();
            //brush.DrawLine("                <label xs=\"12\" sm=\"3\">图片文件</label>");
            //brush.DrawLine("                <core xs=\"12\" sm=\"8\"></core>");
            //brush.DrawLine("                <help sm=\"8\" sm-offset=\"3\"></help>");
            //brush.DrawLine("            </metro:input>");
            //brush.DrawLine("        </boot:form>");
            //brush.DrawLine("    </body>");
            //brush.DrawLine("    <footer style=\"border-top:none;\">");
            //brush.DrawLine("        <metro:button class=\"thumbnails-upload-btn-ok\" color=\"blue\" icon=\"check\">确定</metro:button>");
            //brush.DrawLine("        <metro:button color=\"default\" data-dismiss=\"modal\">取消</metro:button>");
            //brush.DrawFormat("        <metro:alert id=\"thumbnailsAlert_upload_{0}\" style=\"margin-top:20px;\"></metro:alert>", node.GetAttributeValue("id", string.Empty));
            //brush.DrawLine();
            //brush.DrawLine("    </footer>");
            //brush.Draw("</metro:modal>");
        }
        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();
        }
Esempio n. 27
0
 protected override void Draw(PageBrush brush)
 {
     if (string.IsNullOrEmpty(this.Class))
     {
         brush.Draw("<div class=\"form-group m-form__group\">");
     }
     else
     {
         brush.DrawFormat("<div class=\"form-group m-form__group {0}\">", this.Class);
     }
     this.Content.Render(brush);
     brush.Draw("</div>");
 }
        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'");
            });
        }
        protected virtual void FillHelp(HtmlNode node, PageBrush brush)
        {
            var helpNode = node.SelectSingleNodeEx("help");

            if (helpNode == null)
            {
                return;
            }
            string className = LayoutUtil.GetClassName(helpNode, "help-block");

            brush.DrawFormat("<span class=\"{0}\" data-name=\"help\">{1}</span>", UIUtil.GetClassName(helpNode, className), helpNode.InnerText);
            brush.DrawLine();
        }
Esempio n. 30
0
        protected override void Draw(PageBrush brush)
        {
            var list = (this.BelongTemplate.TemplateParent as List);

            brush.DrawLine("<div class=\"m-section\">");
            brush.DrawLine("<div class=\"m-section__content\">");
            brush.DrawFormat("<table class=\"table m-table table-striped m-table--head-bg-{0}\">", list.HeaderBackground);
            brush.DrawLine();
            DrawHeader(brush, list);
            DrawBody(brush, list);
            brush.DrawLine("</table>");
            brush.DrawLine("</div>");
            brush.DrawLine("</div>");
        }