W3C home > Mailing lists > Public > www-validator-cvs@w3.org > January 2013

CVS 2002/css-validator/org/w3c/css/properties/css

From: CVS User ylafon <cvsmail@w3.org>
Date: Wed, 09 Jan 2013 09:10:06 +0000
Message-Id: <E1Tsrfi-0005Xq-5a@roscoe.w3.org>
To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/properties/css
In directory roscoe:/tmp/cvs-serv21271/css

Added Files:
	CssRest.java 
Log Message:
rest per http://www.w3.org/TR/2012/CR-css3-speech-20120320/#rest


--- /sources/public/2002/css-validator/org/w3c/css/properties/css/CssRest.java	2013/01/09 09:10:06	NONE
+++ /sources/public/2002/css-validator/org/w3c/css/properties/css/CssRest.java	2013/01/09 09:10:06	1.1
// $Id: CssRest.java,v 1.1 2013/01/09 09:10:06 ylafon Exp $
// Author: Yves Lafon <ylafon@w3.org>
//
// (c) COPYRIGHT MIT, ERCIM and Keio University, 2013.
// Please first read the full copyright statement in file COPYRIGHT.html
package org.w3c.css.properties.css;

import org.w3c.css.parser.CssSelectors;
import org.w3c.css.parser.CssStyle;
import org.w3c.css.properties.css3.Css3Style;
import org.w3c.css.util.ApplContext;
import org.w3c.css.util.InvalidParamException;
import org.w3c.css.values.CssExpression;
import org.w3c.css.values.CssValue;

/**
 * @since CSS3
 */
public class CssRest extends CssProperty {

	public CssValue value;

	public CssRestAfter cssRestAfter;
	public CssRestBefore cssRestBefore;

	/**
	 * Create a new CssRestAfter
	 */
	public CssRest() {
	}

	/**
	 * Creates a new CssRestAfter
	 *
	 * @param expression The expression for this property
	 * @throws org.w3c.css.util.InvalidParamException
	 *          Expressions are incorrect
	 */
	public CssRest(ApplContext ac, CssExpression expression, boolean check)
			throws InvalidParamException {
		throw new InvalidParamException("value",
				expression.getValue().toString(),
				getPropertyName(), ac);
	}

	public CssRest(ApplContext ac, CssExpression expression)
			throws InvalidParamException {
		this(ac, expression, false);
	}

	/**
	 * Returns the value of this property
	 */
	public Object get() {
		return value;
	}


	/**
	 * Returns the name of this property
	 */
	public final String getPropertyName() {
		return "rest";
	}

	/**
	 * Returns true if this property is "softly" inherited
	 * e.g. his value is equals to inherit
	 */
	public boolean isSoftlyInherited() {
		return value.equals(inherit);
	}

	/**
	 * Returns a string representation of the object.
	 */
	public String toString() {
		return value.toString();
	}

	/**
	 * Add this property to the CssStyle.
	 *
	 * @param style The CssStyle
	 */
	public void addToStyle(ApplContext ac, CssStyle style) {
		if (((Css3Style) style).cssRest != null)
			style.addRedefinitionWarning(ac, this);
		((Css3Style) style).cssRest = this;
		cssRestAfter.addToStyle(ac, style);
		cssRestBefore.addToStyle(ac, style);
	}

	/**
	 * Compares two properties for equality.
	 *
	 * @param property The other property.
	 */
	public boolean equals(CssProperty property) {
		return (property instanceof CssRest &&
				value.equals(((CssRest) property).value));
	}


	/**
	 * Get this property in the style.
	 *
	 * @param style   The style where the property is
	 * @param resolve if true, resolve the style to find this property
	 */
	public CssProperty getPropertyInStyle(CssStyle style, boolean resolve) {
		if (resolve) {
			return ((Css3Style) style).getRest();
		} else {
			return ((Css3Style) style).cssRest;
		}
	}

	/**
	 * Update the source file and the line.
	 * Overrides this method for a macro
	 *
	 * @param line   The line number where this property is defined
	 * @param source The source file where this property is defined
	 */
	public void setInfo(int line, String source) {
		super.setInfo(line, source);
		cssRestAfter.setInfo(line, source);
		cssRestBefore.setInfo(line, source);
	}

	/**
	 * Set this property to be important.
	 * Overrides this method for a macro
	 */
	public void setImportant() {
		super.setImportant();
		cssRestAfter.setImportant();
		cssRestBefore.setImportant();
	}

	/**
	 * Set the context.
	 * Overrides this method for a macro
	 *
	 * @see org.w3c.css.css.CssCascadingOrder#order
	 * @see org.w3c.css.css.StyleSheetParser#handleRule
	 */
	public void setSelectors(CssSelectors selector) {
		super.setSelectors(selector);
		cssRestAfter.setSelectors(selector);
		cssRestBefore.setSelectors(selector);
	}
}
Received on Wednesday, 9 January 2013 09:10:07 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 9 January 2013 09:10:07 GMT