Search in sources :

Example 1 with GaugeAxis

use of io.jmix.charts.model.GaugeAxis in project jmix by jmix-framework.

the class AngularGaugeChartLoader method loadAxes.

protected void loadAxes(AngularGaugeChart chart, Element element) {
    Element axesListElement = element.element("axes");
    if (axesListElement != null) {
        for (Object axisItem : axesListElement.elements("axis")) {
            Element axisElement = (Element) axisItem;
            GaugeAxis axis = new GaugeAxis();
            loadGaugeBands(axis, axisElement);
            String labelFunction = axesListElement.elementText("labelFunction");
            if (StringUtils.isNotBlank(labelFunction)) {
                axis.setLabelFunction(new JsFunction(labelFunction));
            }
            String axisAlpha = axisElement.attributeValue("axisAlpha");
            if (StringUtils.isNotEmpty(axisAlpha)) {
                axis.setAxisAlpha(Double.valueOf(axisAlpha));
            }
            String axisColor = axisElement.attributeValue("axisColor");
            if (StringUtils.isNotEmpty(axisColor)) {
                axis.setAxisColor(Color.valueOf(axisColor));
            }
            String axisThickness = axisElement.attributeValue("axisThickness");
            if (StringUtils.isNotEmpty(axisThickness)) {
                axis.setAxisThickness(Integer.valueOf(axisThickness));
            }
            String bandAlpha = axisElement.attributeValue("bandAlpha");
            if (StringUtils.isNotEmpty(bandAlpha)) {
                axis.setBandAlpha(Double.valueOf(bandAlpha));
            }
            String bandGradientRatio = axisElement.attributeValue("bandGradientRatio");
            if (StringUtils.isNotEmpty(bandGradientRatio)) {
                List<Float> bandGradientRatioList = new ArrayList<>();
                for (String s : GRADIENT_RATIO_PATTERN.split(bandGradientRatio)) bandGradientRatioList.add(Float.valueOf(s));
                axis.setBandGradientRatio(bandGradientRatioList);
            }
            String bandOutlineAlpha = axisElement.attributeValue("bandOutlineAlpha");
            if (StringUtils.isNotEmpty(bandOutlineAlpha)) {
                axis.setBandOutlineAlpha(Double.valueOf(bandOutlineAlpha));
            }
            String bandOutlineColor = axisElement.attributeValue("bandOutlineColor");
            if (StringUtils.isNotEmpty(bandOutlineColor)) {
                axis.setBandOutlineColor(Color.valueOf(bandOutlineColor));
            }
            String bandOutlineThickness = axisElement.attributeValue("bandOutlineThickness");
            if (StringUtils.isNotEmpty(bandOutlineThickness)) {
                axis.setBandOutlineThickness(Integer.valueOf(bandOutlineThickness));
            }
            String bottomText = axisElement.attributeValue("bottomText");
            if (StringUtils.isNotEmpty(bottomText)) {
                axis.setBottomText(loadResourceString(bottomText));
            }
            String bottomTextBold = axisElement.attributeValue("bottomTextBold");
            if (StringUtils.isNotEmpty(bottomTextBold)) {
                axis.setBottomTextBold(Boolean.valueOf(bottomTextBold));
            }
            String bottomTextColor = axisElement.attributeValue("bottomTextColor");
            if (StringUtils.isNotEmpty(bottomTextColor)) {
                axis.setBottomTextColor(Color.valueOf(bottomTextColor));
            }
            String bottomTextFontSize = axisElement.attributeValue("bottomTextFontSize");
            if (StringUtils.isNotEmpty(bottomTextFontSize)) {
                axis.setBottomTextFontSize(Integer.valueOf(bottomTextFontSize));
            }
            String bottomTextYOffset = axisElement.attributeValue("bottomTextYOffset");
            if (StringUtils.isNotEmpty(bottomTextYOffset)) {
                axis.setBottomTextYOffset(Integer.valueOf(bottomTextYOffset));
            }
            String centerX = axisElement.attributeValue("centerX");
            if (StringUtils.isNotEmpty(centerX)) {
                axis.setCenterX(centerX);
            }
            String centerY = axisElement.attributeValue("centerY");
            if (StringUtils.isNotEmpty(centerY)) {
                axis.setCenterY(centerY);
            }
            String color = axisElement.attributeValue("color");
            if (StringUtils.isNotEmpty(color)) {
                axis.setColor(Color.valueOf(color));
            }
            String endAngle = axisElement.attributeValue("endAngle");
            if (StringUtils.isNotEmpty(endAngle)) {
                axis.setEndAngle(Integer.valueOf(endAngle));
            }
            String endValue = axisElement.attributeValue("endValue");
            if (StringUtils.isNotEmpty(endValue)) {
                axis.setEndValue(Double.valueOf(endValue));
            }
            String fontSize = axisElement.attributeValue("fontSize");
            if (StringUtils.isNotEmpty(fontSize)) {
                axis.setFontSize(Integer.valueOf(fontSize));
            }
            String gridCount = axisElement.attributeValue("gridCount");
            if (StringUtils.isNotEmpty(gridCount)) {
                axis.setGridCount(Integer.valueOf(gridCount));
            }
            String gridInside = axisElement.attributeValue("gridInside");
            if (StringUtils.isNotEmpty(gridInside)) {
                axis.setGridInside(Boolean.valueOf(gridInside));
            }
            String id = axisElement.attributeValue("id");
            if (StringUtils.isNotEmpty(id)) {
                axis.setId(id);
            }
            String inside = axisElement.attributeValue("inside");
            if (StringUtils.isNotEmpty(inside)) {
                axis.setInside(Boolean.valueOf(inside));
            }
            String labelFrequency = axisElement.attributeValue("labelFrequency");
            if (StringUtils.isNotEmpty(labelFrequency)) {
                axis.setLabelFrequency(Double.valueOf(labelFrequency));
            }
            String labelOffset = axisElement.attributeValue("labelOffset");
            if (StringUtils.isNotEmpty(labelOffset)) {
                axis.setLabelOffset(Integer.valueOf(labelOffset));
            }
            String labelsEnabled = axisElement.attributeValue("labelsEnabled");
            if (StringUtils.isNotEmpty(labelsEnabled)) {
                axis.setLabelsEnabled(Boolean.valueOf(labelsEnabled));
            }
            String minorTickInterval = axisElement.attributeValue("minorTickInterval");
            if (StringUtils.isNotEmpty(minorTickInterval)) {
                axis.setMinorTickInterval(Double.valueOf(minorTickInterval));
            }
            String minorTickLength = axisElement.attributeValue("minorTickLength");
            if (StringUtils.isNotEmpty(minorTickLength)) {
                axis.setMinorTickLength(Integer.valueOf(minorTickLength));
            }
            String radius = axisElement.attributeValue("radius");
            if (StringUtils.isNotEmpty(radius)) {
                axis.setRadius(radius);
            }
            String showFirstLabel = axisElement.attributeValue("showFirstLabel");
            if (StringUtils.isNotEmpty(showFirstLabel)) {
                axis.setShowFirstLabel(Boolean.valueOf(showFirstLabel));
            }
            String showLastLabel = axisElement.attributeValue("showLastLabel");
            if (StringUtils.isNotEmpty(showLastLabel)) {
                axis.setShowLastLabel(Boolean.valueOf(showLastLabel));
            }
            String startAngle = axisElement.attributeValue("startAngle");
            if (StringUtils.isNotEmpty(startAngle)) {
                axis.setStartAngle(Integer.valueOf(startAngle));
            }
            String startValue = axisElement.attributeValue("startValue");
            if (StringUtils.isNotEmpty(startValue)) {
                axis.setStartValue(Double.valueOf(startValue));
            }
            String tickAlpha = axisElement.attributeValue("tickAlpha");
            if (StringUtils.isNotEmpty(tickAlpha)) {
                axis.setTickAlpha(Double.valueOf(tickAlpha));
            }
            String tickColor = axisElement.attributeValue("tickColor");
            if (StringUtils.isNotEmpty(tickColor)) {
                axis.setTickColor(Color.valueOf(tickColor));
            }
            String tickLength = axisElement.attributeValue("tickLength");
            if (StringUtils.isNotEmpty(tickLength)) {
                axis.setTickLength(Integer.valueOf(tickLength));
            }
            String tickThickness = axisElement.attributeValue("tickThickness");
            if (StringUtils.isNotEmpty(tickThickness)) {
                axis.setTickThickness(Integer.valueOf(tickThickness));
            }
            String topText = axisElement.attributeValue("topText");
            if (StringUtils.isNotEmpty(topText)) {
                axis.setTopText(loadResourceString(topText));
            }
            String topTextBold = axisElement.attributeValue("topTextBold");
            if (StringUtils.isNotEmpty(topTextBold)) {
                axis.setTopTextBold(Boolean.valueOf(topTextBold));
            }
            String topTextColor = axisElement.attributeValue("topTextColor");
            if (StringUtils.isNotEmpty(topTextColor)) {
                axis.setTopTextColor(Color.valueOf(topTextColor));
            }
            String topTextFontSize = axisElement.attributeValue("topTextFontSize");
            if (StringUtils.isNotEmpty(topTextFontSize)) {
                axis.setTopTextFontSize(Integer.valueOf(topTextFontSize));
            }
            String topTextYOffset = axisElement.attributeValue("topTextYOffset");
            if (StringUtils.isNotEmpty(topTextYOffset)) {
                axis.setTopTextYOffset(Integer.valueOf(topTextYOffset));
            }
            String unit = axisElement.attributeValue("unit");
            if (StringUtils.isNotEmpty(unit)) {
                axis.setUnit(unit);
            }
            String unitPosition = axisElement.attributeValue("unitPosition");
            if (StringUtils.isNotEmpty(unitPosition)) {
                axis.setUnitPosition(UnitPosition.valueOf(unitPosition));
            }
            String valueInterval = axisElement.attributeValue("valueInterval");
            if (StringUtils.isNotEmpty(valueInterval)) {
                axis.setValueInterval(Integer.valueOf(valueInterval));
            }
            String usePrefixes = axisElement.attributeValue("usePrefixes");
            if (StringUtils.isNotEmpty(usePrefixes)) {
                axis.setUsePrefixes(Boolean.valueOf(usePrefixes));
            }
            chart.addAxes(axis);
        }
    }
}
Also used : JsFunction(io.jmix.charts.model.JsFunction) Element(org.dom4j.Element) ArrayList(java.util.ArrayList) GaugeAxis(io.jmix.charts.model.GaugeAxis)

Aggregations

GaugeAxis (io.jmix.charts.model.GaugeAxis)1 JsFunction (io.jmix.charts.model.JsFunction)1 ArrayList (java.util.ArrayList)1 Element (org.dom4j.Element)1