List of usage examples for org.apache.wicket.markup Markup find
@Override public final IMarkupFragment find(final String id)
From source file:org.opensingular.lib.wicket.util.bootstrap.layout.TemplatePanel.java
License:Apache License
@Override protected IMarkupSourcingStrategy newMarkupSourcingStrategy() { return new PanelMarkupSourcingStrategy(false) { @Override/*from w w w. ja v a 2s .c o m*/ public IMarkupFragment getMarkup(MarkupContainer parent, Component child) { // corrige o problema de encoding StringResourceStream stringResourceStream = new StringResourceStream( "<wicket:panel>" + getTemplateFunction().apply(TemplatePanel.this) + "</wicket:panel>", "text/html"); stringResourceStream.setCharset(Charset.forName( Optional.ofNullable(Application.get().getMarkupSettings().getDefaultMarkupEncoding()) .orElse(StandardCharsets.UTF_8.name()))); MarkupParser markupParser = new MarkupParser(new MarkupResourceStream(stringResourceStream)); markupParser.setWicketNamespace(MarkupParser.WICKET); Markup markup; try { markup = markupParser.parse(); } catch (Exception e) { throw SingularUtil.propagate(e); } // If child == null, than return the markup fragment starting // with <wicket:panel> if (child == null) { return markup; } // Copiado da superclasse. buscando markup do child IMarkupFragment associatedMarkup = markup.find(child.getId()); if (associatedMarkup != null) { return associatedMarkup; } associatedMarkup = searchMarkupInTransparentResolvers(parent, parent.getMarkup(), child); if (associatedMarkup != null) { return associatedMarkup; } return findMarkupInAssociatedFileHeader(parent, child); } @Override public void onComponentTagBody(Component component, MarkupStream markupStream, ComponentTag openTag) { TemplatePanel.this.onBeforeComponentTagBody(markupStream, openTag); super.onComponentTagBody(component, markupStream, openTag); TemplatePanel.this.onAfterComponentTagBody(markupStream, openTag); } }; }