- From: Yves Lafon via cvs-syncmail <cvsmail@w3.org>
- Date: Sun, 07 Oct 2012 14:45:54 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/properties/css3 In directory hutz:/tmp/cvs-serv10667/css3 Modified Files: Css3Style.java Added Files: CssFlexBasis.java Log Message: flex-basis per http://www.w3.org/TR/2012/CR-css3-flexbox-20120918/#flex-basis-propdef --- NEW FILE: CssFlexBasis.java --- // $Id: CssFlexBasis.java,v 1.1 2012/10/07 14:45:52 ylafon Exp $ // Author: Yves Lafon <ylafon@w3.org> // // (c) COPYRIGHT MIT, ERCIM and Keio University, 2012. // Please first read the full copyright statement in file COPYRIGHT.html package org.w3c.css.properties.css3; import org.w3c.css.util.ApplContext; import org.w3c.css.util.InvalidParamException; import org.w3c.css.values.CssExpression; import org.w3c.css.values.CssIdent; import org.w3c.css.values.CssLength; import org.w3c.css.values.CssPercentage; import org.w3c.css.values.CssTypes; import org.w3c.css.values.CssValue; /** * @spec http://www.w3.org/TR/2012/CR-css3-flexbox-20120918/#flex-basis-propdef * @see CssWidth */ public class CssFlexBasis extends org.w3c.css.properties.css.CssFlexBasis { public static final CssIdent auto = CssIdent.getIdent("auto"); /** * Create a new CssFlexBasis */ public CssFlexBasis() { value = initial; } /** * Creates a new CssFlexBasis * * @param expression The expression for this property * @throws org.w3c.css.util.InvalidParamException * Expressions are incorrect */ public CssFlexBasis(ApplContext ac, CssExpression expression, boolean check) throws InvalidParamException { if (check && expression.getCount() > 1) { throw new InvalidParamException("unrecognize", ac); } /** * WARNING - this is a replication of CSS3 Width parsing * instead of creating a new object. This is because the exception * would be tight to width's getPropertyName() */ CssValue val = expression.getValue(); setByUser(); switch (val.getType()) { case CssTypes.CSS_IDENT: CssIdent ident = (CssIdent) val; if (inherit.equals(val)) { value = inherit; } else if (auto.equals(val)) { value = auto; } else { throw new InvalidParamException("unrecognize", ac); } break; case CssTypes.CSS_NUMBER: case CssTypes.CSS_LENGTH: CssLength l = val.getLength(); l.checkPositiveness(ac, this); value = l; break; case CssTypes.CSS_PERCENTAGE: CssPercentage p = val.getPercentage(); p.checkPositiveness(ac, this); value = p; break; default: throw new InvalidParamException("value", val, getPropertyName(), ac); } expression.next(); } public CssFlexBasis(ApplContext ac, CssExpression expression) throws InvalidParamException { this(ac, expression, false); } /** * Is the value of this property is a default value. * It is used by all macro for the function <code>print</code> */ public boolean isDefault() { return ((value == auto) || (value == initial)); } } Index: Css3Style.java =================================================================== RCS file: /sources/public/2002/css-validator/org/w3c/css/properties/css3/Css3Style.java,v retrieving revision 1.109 retrieving revision 1.110 diff -u -d -r1.109 -r1.110 --- Css3Style.java 7 Oct 2012 13:37:29 -0000 1.109 +++ Css3Style.java 7 Oct 2012 14:45:52 -0000 1.110 @@ -32,6 +32,7 @@ import org.w3c.css.properties.css.CssColumnSpan; import org.w3c.css.properties.css.CssColumnWidth; import org.w3c.css.properties.css.CssColumns; +import org.w3c.css.properties.css.CssFlexBasis; import org.w3c.css.properties.css.CssFlexDirection; import org.w3c.css.properties.css.CssFlexFlow; import org.w3c.css.properties.css.CssFlexGrow; @@ -161,6 +162,7 @@ public CssAlignContent cssAlignContent; public CssAlignItems cssAlignItems; public CssAlignSelf cssAlignSelf; + public CssFlexBasis cssFlexBasis; public CssFlexDirection cssFlexDirection; public CssFlexWrap cssFlexWrap; public CssFlexFlow cssFlexFlow; @@ -1173,6 +1175,15 @@ return cssAlignSelf; } + public CssFlexBasis getFlexBasis() { + if (cssFlexBasis == null) { + cssFlexBasis = + (CssFlexBasis) style.CascadingOrder( + new CssFlexBasis(), style, selector); + } + return cssFlexBasis; + } + public CssFlexDirection getFlexDirection() { if (cssFlexDirection == null) { cssFlexDirection =
Received on Sunday, 7 October 2012 14:45:56 UTC