@Override public TermRect createRect(TermFunction function) { if (function.getFunctionName().equalsIgnoreCase("rect")) { List<Term<?>> args = function.getValues(true); //try the rect(0 0 0 0) syntax if (args == null || args.size() != 4) args = function.getSeparatedValues(CSSFactory.getTermFactory().createOperator(','), true); //try the rect(0, 0, 0, 0) syntax if (args.size() == 4) { //check the argument count and types for (int i = 0; i < 4; i++) { Term<?> val = args.get(i); if (val instanceof TermIdent) { if (((TermIdent) val).getValue().equalsIgnoreCase("auto")) //replace 'auto' with null args.set(i, null); } else if (!(val instanceof TermLength)) { return null; } } return createRect((TermLength) args.get(0), (TermLength) args.get(1), (TermLength) args.get(2), (TermLength) args.get(3)); } else { return null; } } else { return null; } }
@Override public TermRect createRect(TermFunction function) { if (function.getFunctionName().equalsIgnoreCase("rect")) { List<Term<?>> args = function.getValues(true); //try the rect(0 0 0 0) syntax if (args == null || args.size() != 4) args = function.getSeparatedValues(CSSFactory.getTermFactory().createOperator(','), true); //try the rect(0, 0, 0, 0) syntax if (args.size() == 4) { //check the argument count and types for (int i = 0; i < 4; i++) { Term<?> val = args.get(i); if (val instanceof TermIdent) { if (((TermIdent) val).getValue().equalsIgnoreCase("auto")) //replace 'auto' with null args.set(i, null); } else if (!(val instanceof TermLength)) { return null; } } return createRect((TermLength) args.get(0), (TermLength) args.get(1), (TermLength) args.get(2), (TermLength) args.get(3)); } else { return null; } } else { return null; } }
List<Term<?>> args = func.getSeparatedValues(CSSFactory.getTermFactory().createOperator(','), false); if (args != null)
List<Term<?>> args = func.getSeparatedValues(CSSFactory.getTermFactory().createOperator(','), false); if (args != null)