Search in sources :

Example 6 with XhtmlBuffer

use of com.manydesigns.elements.xml.XhtmlBuffer in project Portofino by ManyDesigns.

the class AbstractCrudAction method configureSortLinks.

protected void configureSortLinks(TableFormBuilder tableFormBuilder) {
    for (PropertyAccessor propertyAccessor : classAccessor.getProperties()) {
        String propName = propertyAccessor.getName();
        String sortDirection;
        if (propName.equals(sortProperty) && "asc".equals(this.sortDirection)) {
            sortDirection = "desc";
        } else {
            sortDirection = "asc";
        }
        Map<String, Object> parameters = new HashMap<>();
        parameters.put("sortProperty", propName);
        parameters.put("sortDirection", sortDirection);
        parameters.put(SEARCH_STRING_PARAM, searchString);
        Charset charset = Charset.forName(context.getRequest().getCharacterEncoding());
        UrlBuilder urlBuilder = new UrlBuilder(charset, Util.getAbsoluteUrl(context.getActionPath()), false).addParameters(parameters);
        XhtmlBuffer xb = new XhtmlBuffer();
        xb.openElement("a");
        xb.addAttribute("class", "sort-link");
        xb.addAttribute("href", urlBuilder.toString());
        xb.writeNoHtmlEscape("%{label}");
        if (propName.equals(sortProperty)) {
            xb.openElement("em");
            xb.addAttribute("class", "pull-right glyphicon glyphicon-chevron-" + ("desc".equals(sortDirection) ? "up" : "down"));
            xb.closeElement("em");
        }
        xb.closeElement("a");
        OgnlTextFormat hrefFormat = OgnlTextFormat.create(xb.toString());
        String encoding = getUrlEncoding();
        hrefFormat.setEncoding(encoding);
        tableFormBuilder.configHeaderTextFormat(propName, hrefFormat);
    }
}
Also used : PropertyAccessor(com.manydesigns.elements.reflection.PropertyAccessor) XhtmlBuffer(com.manydesigns.elements.xml.XhtmlBuffer) Charset(java.nio.charset.Charset) JSONObject(org.json.JSONObject) UrlBuilder(com.manydesigns.elements.servlet.UrlBuilder) OgnlTextFormat(com.manydesigns.elements.text.OgnlTextFormat)

Example 7 with XhtmlBuffer

use of com.manydesigns.elements.xml.XhtmlBuffer in project Portofino by ManyDesigns.

the class XhtmlFragmentMessageBodyWriter method writeTo.

@Override
public void writeTo(XhtmlFragment fragment, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, final MultivaluedMap<String, Object> httpHeaders, final OutputStream entityStream) throws IOException, WebApplicationException {
    OutputStreamWriter writer = new OutputStreamWriter(entityStream);
    XhtmlBuffer buffer = new XhtmlBuffer(writer);
    fragment.toXhtml(buffer);
    writer.flush();
}
Also used : XhtmlBuffer(com.manydesigns.elements.xml.XhtmlBuffer) OutputStreamWriter(java.io.OutputStreamWriter)

Example 8 with XhtmlBuffer

use of com.manydesigns.elements.xml.XhtmlBuffer in project Portofino by ManyDesigns.

the class SearchFormTest method setUp.

@Override
@BeforeMethod
public void setUp() throws Exception {
    super.setUp();
    writer = new StringWriter();
    SearchFormBuilder builder = new SearchFormBuilder(AnnotatedBean3.class);
    form = builder.build();
    buffer = new XhtmlBuffer(writer);
}
Also used : StringWriter(java.io.StringWriter) XhtmlBuffer(com.manydesigns.elements.xml.XhtmlBuffer) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 9 with XhtmlBuffer

use of com.manydesigns.elements.xml.XhtmlBuffer in project Portofino by ManyDesigns.

the class Util method elementToString.

public static String elementToString(XhtmlFragment element) {
    XhtmlBuffer xb = new XhtmlBuffer();
    element.toXhtml(xb);
    return xb.toString();
}
Also used : XhtmlBuffer(com.manydesigns.elements.xml.XhtmlBuffer)

Example 10 with XhtmlBuffer

use of com.manydesigns.elements.xml.XhtmlBuffer in project Portofino by ManyDesigns.

the class Util method writeFormattedText.

public static String writeFormattedText(String str, boolean highlightLinks) {
    XhtmlBuffer xb = new XhtmlBuffer();
    writeFormattedText(xb, str, highlightLinks);
    return xb.toString();
}
Also used : XhtmlBuffer(com.manydesigns.elements.xml.XhtmlBuffer)

Aggregations

XhtmlBuffer (com.manydesigns.elements.xml.XhtmlBuffer)14 PropertyAccessor (com.manydesigns.elements.reflection.PropertyAccessor)1 UrlBuilder (com.manydesigns.elements.servlet.UrlBuilder)1 OgnlTextFormat (com.manydesigns.elements.text.OgnlTextFormat)1 XhtmlFragment (com.manydesigns.elements.xml.XhtmlFragment)1 OutputStreamWriter (java.io.OutputStreamWriter)1 StringWriter (java.io.StringWriter)1 Charset (java.nio.charset.Charset)1 JspWriter (javax.servlet.jsp.JspWriter)1 OgnlContext (ognl.OgnlContext)1 JSONObject (org.json.JSONObject)1 BeforeMethod (org.testng.annotations.BeforeMethod)1 Test (org.testng.annotations.Test)1