@Override protected String consumePlaceholderInnards(XMLElement elem) throws UnableToCompleteException { return elem.consumeInnerHtml(fieldAndComputed); }
private String handleHasHTMLPlaceholder(XMLElement elem, String name, String idHolder) throws UnableToCompleteException { idIsHasHTML.add(idHolder); String openPlaceholder = genOpenTag(elem, name, idHolder); String body = elem.consumeInnerHtml(new HtmlPlaceholderInterpreter(uiWriter, message, ancestorExpression)); String bodyToken = tokenator.nextToken(body); String closePlaceholder = genCloseTag(name); return openPlaceholder + bodyToken + closePlaceholder; }
public void parse(XMLElement elem, String fieldName, JClassType type, UiBinderWriter writer) throws UnableToCompleteException { HtmlInterpreter interpreter = HtmlInterpreter.newInterpreterForUiObject(writer, fieldName); writer.beginAttachedSection(fieldName + ".getElement()"); String html = elem.consumeInnerHtml(interpreter); writer.endAttachedSection(); // TODO(jgw): throw an error if there's a conflicting 'html' attribute. if (html.trim().length() > 0) { writer.genPropertySet(fieldName, "HTML", writer.declareTemplateCall(html, fieldName)); } } }
private void parseColumns(String fieldName, UiBinderWriter writer, RowContent row, XMLElement child) throws UnableToCompleteException { String tagName; for (XMLElement cell : child.consumeChildElements()) { tagName = cell.getLocalName(); if (!tagName.equals(CELL_TAG) && !tagName.equals(CUSTOMCELL_TAG) || !cell.getPrefix().equals(child.getPrefix())) { writer.die("Grid's row tag in %s may only contain %s or %s element.", fieldName, CELL_TAG, CUSTOMCELL_TAG); } CellContent newColumn = null; String styleName = cell.consumeStringAttribute(STYLE_NAME_ATTRIBUTE, null); if (tagName.equals(CELL_TAG)) { HtmlInterpreter htmlInt = HtmlInterpreter.newInterpreterForUiObject( writer, fieldName); String html = cell.consumeInnerHtml(htmlInt); newColumn = new CellContent(tagName, html, styleName); } if (tagName.equals(CUSTOMCELL_TAG)) { FieldWriter field = writer.parseElementToField(cell.consumeSingleChildElement()); newColumn = new CellContent(tagName, field.getNextReference(), styleName); } row.addColumn(newColumn); } }
public Boolean interpretElement(XMLElement child) throws UnableToCompleteException { // CustomButton can only contain Face elements. String ns = child.getNamespaceUri(); String faceName = child.getLocalName(); if (!ns.equals(elem.getNamespaceUri())) { writer.die(elem, "Invalid child namespace: %s", ns); } if (!faceNames.contains(faceName)) { writer.die(elem, "Invalid CustomButton face: %s:%s", ns, faceName); } HtmlInterpreter interpreter = HtmlInterpreter.newInterpreterForUiObject( writer, fieldName); String innerHtml = child.consumeInnerHtml(interpreter); if (innerHtml.length() > 0) { writer.addStatement("%s.%s().setHTML(%s);", fieldName, faceNameGetter(faceName), writer.declareTemplateCall(innerHtml, fieldName)); } if (child.hasAttribute("image")) { String image = child.consumeImageResourceAttribute("image"); writer.addStatement("%s.%s().setImage(new %s(%s));", fieldName, faceNameGetter(faceName), IMAGE_CLASS, image); } return true; // We consumed it } });
public void parse(XMLElement elem, String fieldName, JClassType type, UiBinderWriter writer) throws UnableToCompleteException { HtmlInterpreter interpreter = new HtmlInterpreter(writer, fieldName, new HtmlMessageInterpreter(writer, fieldName)); interpreter.interpretElement(elem); writer.beginAttachedSection(fieldName); String html = elem.consumeOpeningTag() + elem.consumeInnerHtml(interpreter) + elem.getClosingTag(); writer.endAttachedSection(); writer.setFieldInitializer(fieldName, String.format( "(%1$s) UiBinderUtil.fromHtml(%2$s)", type.getQualifiedSourceName(), writer.declareTemplateCall(html, fieldName))); } }
@Override protected String consumePlaceholderInnards(XMLElement elem) throws UnableToCompleteException { return elem.consumeInnerHtml(fieldAndComputed); }
@Override protected String consumePlaceholderInnards(XMLElement elem) throws UnableToCompleteException { return elem.consumeInnerHtml(fieldAndComputed); }
public String interpretElement(XMLElement elem) throws UnableToCompleteException { MessagesWriter messages = uiWriter.getMessages(); if (messages.isMessage(elem)) { if (!elem.hasChildNodes()) { uiWriter.die(elem, "Empty message"); } MessageWriter message = messages.newMessage(elem); message.setDefaultMessage(elem.consumeInnerHtml(phiProvider.get(message))); return uiWriter.tokenForSafeConstant(elem, messages.declareMessage(message)); } return null; } }
@Override public String interpretElement(XMLElement elem) throws UnableToCompleteException { fieldAndComputed.interpretElement(elem); if (isDomPlaceholder(elem)) { MessagesWriter mw = uiWriter.getMessages(); String name = mw.consumeMessageAttribute("ph", elem); if ("".equals(name)) { name = "htmlElement" + (++serial); } String openTag = elem.consumeOpeningTag(); String openPlaceholder = nextOpenPlaceholder(name + "Begin", uiWriter.detokenate(openTag)); /* * This recursive innerHtml call has already been escaped. Hide it in a * token to avoid double escaping */ String body = tokenator.nextToken(elem.consumeInnerHtml(this)); String closeTag = elem.getClosingTag(); String closePlaceholder = nextClosePlaceholder(name + "End", closeTag); return openPlaceholder + body + closePlaceholder; } return super.interpretElement(elem); }
caption = child.consumeInnerHtml(interpreter); } else if (CUSTOM_CAPTION.equals(child.getLocalName())) { if (customCaption != null) {
/** * Refines {@link #consumeInnerHtml(Interpreter)} to handle * PostProcessingInterpreter. */ public String consumeInnerHtml(PostProcessingInterpreter<String> interpreter) throws UnableToCompleteException { String html = consumeInnerHtml((Interpreter<String>) interpreter); return interpreter.postProcess(html); }
String html = elem.consumeInnerHtml(InterpreterPipe.newPipe( widgetInterpreter, htmlInterpreter)); writer.endAttachedSection();
HtmlInterpreter htmlInt = HtmlInterpreter.newInterpreterForUiObject( writer, fieldName); String html = children.header.consumeInnerHtml(htmlInt); writer.addStatement("%s.add(%s, %s, true);", fieldName, childField.getNextReference(),
tabHTML = tabChild.consumeInnerHtml(interpreter); } else { if (childField != null) {
interpreters = InterpreterPipe.newPipe( isRenderableInterpreter, widgetInterpreter, htmlInterpreter); String html = elem.consumeInnerHtml(interpreters);
writer, fieldName); String size = children.header.consumeRequiredDoubleAttribute("size"); String html = children.header.consumeInnerHtml(htmlInt); writer.addStatement("%s.add(%s, %s, true, %s);", fieldName, childField.getNextReference(), writer.declareTemplateCall(html, fieldName), size);
private String handleHasHTMLPlaceholder(XMLElement elem, String name, String idHolder) throws UnableToCompleteException { idIsHasHTML.add(idHolder); String openPlaceholder = genOpenTag(elem, name, idHolder); String body = elem.consumeInnerHtml(new HtmlPlaceholderInterpreter(uiWriter, message, ancestorExpression)); String bodyToken = tokenator.nextToken(body); String closePlaceholder = genCloseTag(name); return openPlaceholder + bodyToken + closePlaceholder; }
private String handleHasHTMLPlaceholder(XMLElement elem, String name, String idHolder) throws UnableToCompleteException { idIsHasHTML.add(idHolder); String openPlaceholder = genOpenTag(elem, name, idHolder); String body = elem.consumeInnerHtml(new HtmlPlaceholderInterpreter(uiWriter, message, ancestorExpression)); String bodyToken = tokenator.nextToken(body); String closePlaceholder = genCloseTag(name); return openPlaceholder + bodyToken + closePlaceholder; }
@Override public void parse(XMLElement elem, FieldManager fieldManager, UiBinderWriter writer) throws UnableToCompleteException { String resourceName = elem.consumeRequiredRawAttribute("name"); //fieldManager.registerField(fieldType, fieldName); JClassType xtemplateType = writer.getOracle().findType("com.extjs.gxt.ui.client.core.XTemplate"); String innerHtml = elem.consumeInnerHtml(new TextInterpreter(writer)); String text = UiBinderWriter.escapeTextForJavaStringLiteral(innerHtml); FieldWriter fieldWriter = fieldManager.registerField(xtemplateType, resourceName); fieldWriter.setInitializer("com.extjs.gxt.ui.client.core.XTemplate.create(\"" + text + "\")"); } }