1 like 0 dislike
38 views
in Vaadin by
Vaadin int, boolean gibi değerleri string formatında html olarak göstermek

1 Answer

0 like 0 dislike
by anonymous Bilge (165k points)
Grid column active 0,1 gibi değerler almaktadır. Bunu iconlarla göstermek istersek önce şöyle bir class hazırlamalıyız.

1-

package common.utils;

import com.vaadin.data.util.converter.Converter;
import com.vaadin.data.util.converter.StringToIntegerConverter;
import com.vaadin.server.FontAwesome;
import common.KMConstants;
import java.util.Locale;

public class StringToHtmlConverter extends StringToIntegerConverter {

    @Override
    public String convertToPresentation(Integer value, Class<? extends String> targetType, Locale locale) throws Converter.ConversionException {
        String color;
        if (value == KMConstants.KM__STATE_AKTIF) {
            color = KMConstants.KM__STATE_AKTIF_COLOR;
        } else {
            color = KMConstants.KM__STATE_PASIF_COLOR;
        }
        String iconCode = "<span class=\"v-icon\" style=\"font-family: "
                + FontAwesome.CIRCLE.getFontFamily() + ";color:" + color + "\">&#x"
                + Integer.toHexString(FontAwesome.SQUARE.getCodepoint()) + ";</span>";
        return iconCode;
    }
}

2-
....
 StringToHtmlConverter sthc = new StringToHtmlConverter();
 gridUsers.getColumn("active").setConverter(sthc).setRenderer(new HtmlRenderer());
.....
...