📄 modeltree.java
字号:
protected ListIterator listIterator; public ModelSubNode() {} public ModelSubNode(Element nodeElement, ModelNode modelNode) { this.rootNode = modelNode; this.nodeNameExdr = new FlexibleStringExpander(nodeElement.getAttribute("node-name")); Element actionElement = UtilXml.firstChildElement(nodeElement, "entity-and"); if (actionElement != null) { actions.add(new ModelTreeAction.EntityAnd(this, actionElement)); } actionElement = UtilXml.firstChildElement(nodeElement, "service"); if (actionElement != null) { actions.add(new ModelTreeAction.Service(this, actionElement)); } actionElement = UtilXml.firstChildElement(nodeElement, "entity-condition"); if (actionElement != null) { actions.add(new ModelTreeAction.EntityCondition(this, actionElement)); } actionElement = UtilXml.firstChildElement(nodeElement, "script"); if (actionElement != null) { actions.add(new ModelTreeAction.Script(this, actionElement)); } } public ModelTree.ModelNode getNode() { return this.rootNode; } public String getNodeName(Map context) { return this.nodeNameExdr.expandString(context); } public List getActions() { return actions; } public void setListIterator(ListIterator iter) { listIterator = iter; } public ListIterator getListIterator() { return listIterator; } } public static class Label { protected FlexibleStringExpander textExdr; protected FlexibleStringExpander idExdr; protected FlexibleStringExpander styleExdr; public Label(Element labelElement) { // put the text attribute first, then the pcdata under the element, if both are there of course String textAttr = UtilFormatOut.checkNull(labelElement.getAttribute("text")); String pcdata = UtilFormatOut.checkNull(UtilXml.elementValue(labelElement)); this.textExdr = new FlexibleStringExpander(textAttr + pcdata); this.idExdr = new FlexibleStringExpander(labelElement.getAttribute("id")); this.styleExdr = new FlexibleStringExpander(labelElement.getAttribute("style")); } public void renderLabelString(Writer writer, Map context, TreeStringRenderer treeStringRenderer) { try { treeStringRenderer.renderLabel(writer, context, this); } catch (IOException e) { String errMsg = "Error rendering label with id [" + getId(context) + "]: " + e.toString(); Debug.logError(e, errMsg, module); throw new RuntimeException(errMsg); } } public String getText(Map context) { return this.textExdr.expandString(context); } public String getId(Map context) { return this.idExdr.expandString(context); } public String getStyle(Map context) { return this.styleExdr.expandString(context); } } public static class Link { protected FlexibleStringExpander textExdr; protected FlexibleStringExpander idExdr; protected FlexibleStringExpander styleExdr; protected FlexibleStringExpander targetExdr; protected FlexibleStringExpander targetWindowExdr; protected FlexibleStringExpander prefixExdr; protected FlexibleStringExpander nameExdr; protected FlexibleStringExpander titleExdr; protected Image image; protected String urlMode = "intra-app"; protected boolean fullPath = false; protected boolean secure = false; protected boolean encode = false; public Link() { setText(null); setId(null); setStyle(null); setTarget(null); setTargetWindow(null); setPrefix(null); setUrlMode(null); setFullPath(null); setSecure(null); setEncode(null); setName(null); setTitle(null); } public Link(Element linkElement) { setText(linkElement.getAttribute("text")); setId(linkElement.getAttribute("id")); setStyle(linkElement.getAttribute("style")); setTarget(linkElement.getAttribute("target")); setTargetWindow(linkElement.getAttribute("target-window")); setPrefix(linkElement.getAttribute("prefix")); setUrlMode(linkElement.getAttribute("url-mode")); setFullPath(linkElement.getAttribute("full-path")); setSecure(linkElement.getAttribute("secure")); setEncode(linkElement.getAttribute("encode")); setName(linkElement.getAttribute("name")); setTitle(linkElement.getAttribute("title")); Element imageElement = UtilXml.firstChildElement(linkElement, "image"); if (imageElement != null) { this.image = new Image(imageElement); } } public void renderLinkString(Writer writer, Map context, TreeStringRenderer treeStringRenderer) { try { treeStringRenderer.renderLink(writer, context, this); } catch (IOException e) { String errMsg = "Error rendering link with id [" + getId(context) + "]: " + e.toString(); Debug.logError(e, errMsg, module); throw new RuntimeException(errMsg); } } public String getText(Map context) { return this.textExdr.expandString(context); } public String getId(Map context) { return this.idExdr.expandString(context); } public String getStyle(Map context) { return this.styleExdr.expandString(context); } public String getName(Map context) { return this.nameExdr.expandString(context); } public String getTitle(Map context) { return this.titleExdr.expandString(context); } public String getTarget(Map context) { return this.targetExdr.expandString(context); } public String getTargetWindow(Map context) { return this.targetWindowExdr.expandString(context); } public String getUrlMode() { return this.urlMode; } public String getPrefix(Map context) { return this.prefixExdr.expandString(context); } public boolean getFullPath() { return this.fullPath; } public boolean getSecure() { return this.secure; } public boolean getEncode() { return this.encode; } public Image getImage() { return this.image; } public void setText(String val) { String textAttr = UtilFormatOut.checkNull(val); this.textExdr = new FlexibleStringExpander(textAttr); } public void setId(String val) { this.idExdr = new FlexibleStringExpander(val); } public void setStyle(String val) { this.styleExdr = new FlexibleStringExpander(val); } public void setName(String val) { this.nameExdr = new FlexibleStringExpander(val); } public void setTitle(String val) { this.titleExdr = new FlexibleStringExpander(val); } public void setTarget(String val) { this.targetExdr = new FlexibleStringExpander(val); } public void setTargetWindow(String val) { this.targetWindowExdr = new FlexibleStringExpander(val); } public void setPrefix(String val) { this.prefixExdr = new FlexibleStringExpander(val); } public void setUrlMode(String val) { if (UtilValidate.isNotEmpty(val)) this.urlMode = val; } public void setFullPath(String val) { String sFullPath = val; if (sFullPath != null && sFullPath.equalsIgnoreCase("true")) this.fullPath = true; else this.fullPath = false; } public void setSecure(String val) { String sSecure = val; if (sSecure != null && sSecure.equalsIgnoreCase("true")) this.secure = true; else this.secure = false; } public void setEncode(String val) { String sEncode = val; if (sEncode != null && sEncode.equalsIgnoreCase("true")) this.encode = true; else this.encode = false; } public void setImage(Image img) { this.image = img; } } public static class Image { protected FlexibleStringExpander srcExdr; protected FlexibleStringExpander idExdr; protected FlexibleStringExpander styleExdr; protected FlexibleStringExpander widthExdr; protected FlexibleStringExpander heightExdr; protected FlexibleStringExpander borderExdr; protected String urlMode; public Image() { setSrc(null); setId(null); setStyle(null); setWidth(null); setHeight(null); setBorder("0"); setUrlMode(null); } public Image(Element imageElement) { setSrc(imageElement.getAttribute("src")); setId(imageElement.getAttribute("id")); setStyle(imageElement.getAttribute("style")); setWidth(imageElement.getAttribute("width")); setHeight(imageElement.getAttribute("height")); setBorder(UtilFormatOut.checkEmpty(imageElement.getAttribute("border"), "0")); setUrlMode(UtilFormatOut.checkEmpty(imageElement.getAttribute("url-mode"), "content")); } public void renderImageString(Writer writer, Map context, TreeStringRenderer treeStringRenderer) { try { treeStringRenderer.renderImage(writer, context, this); } catch (IOException e) { String errMsg = "Error rendering image with id [" + getId(context) + "]: " + e.toString(); Debug.logError(e, errMsg, module); throw new RuntimeException(errMsg); } } public String getSrc(Map context) { return this.srcExdr.expandString(context); } public String getId(Map context) { return this.idExdr.expandString(context); } public String getStyle(Map context) { return this.styleExdr.expandString(context); } public String getWidth(Map context) { return this.widthExdr.expandString(context); } public String getHeight(Map context) { return this.heightExdr.expandString(context); } public String getBorder(Map context) { return this.borderExdr.expandString(context); } public String getUrlMode() { return this.urlMode; } public void setSrc(String val) { String textAttr = UtilFormatOut.checkNull(val); this.srcExdr = new FlexibleStringExpander(textAttr); } public void setId(String val) { this.idExdr = new FlexibleStringExpander(val); } public void setStyle(String val) { this.styleExdr = new FlexibleStringExpander(val); } public void setWidth(String val) { this.widthExdr = new FlexibleStringExpander(val); } public void setHeight(String val) { this.heightExdr = new FlexibleStringExpander(val); } public void setBorder(String val) { this.borderExdr = new FlexibleStringExpander(val); } public void setUrlMode(String val) { if (UtilValidate.isEmpty(val)) this.urlMode = "content"; else this.urlMode = val; } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -