- From: Yves Lafon via cvs-syncmail <cvsmail@w3.org>
- Date: Tue, 04 Oct 2011 20:04:11 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/selectors
In directory hutz:/tmp/cvs-serv9935/org/w3c/css/selectors
Modified Files:
PseudoFactory.java
Log Message:
updated per http://www.w3.org/TR/2011/REC-css3-selectors-20110929/
Index: PseudoFactory.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/selectors/PseudoFactory.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- PseudoFactory.java 12 Feb 2009 21:26:35 -0000 1.7
+++ PseudoFactory.java 4 Oct 2011 20:04:09 -0000 1.8
@@ -4,16 +4,15 @@
// Please first read the full copyright statement in file COPYRIGHT.html
package org.w3c.css.selectors;
-import org.w3c.css.util.ApplContext;
-import org.w3c.css.util.InvalidParamException;
-
-import org.w3c.css.selectors.pseudofunctions.PseudoFunctionContains;
import org.w3c.css.selectors.pseudofunctions.PseudoFunctionLang;
import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNot;
import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNthChild;
import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNthLastChild;
-import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNthOfType;
import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNthLastOfType;
+import org.w3c.css.selectors.pseudofunctions.PseudoFunctionNthOfType;
+import org.w3c.css.util.ApplContext;
+import org.w3c.css.util.CssVersion;
+import org.w3c.css.util.InvalidParamException;
/**
* PseudoFactory<br />
@@ -22,175 +21,179 @@
public class PseudoFactory {
private static final String[] PSEUDOCLASS_CONSTANTSCSS3 =
- { "link", "visited", "active", "focus", "target",
- "hover", "first-child", "enabled", "disabled",
- "checked", "indeterminate", "root", "last-child",
- "first-of-type", "last-of-type", "only-of-type",
- "only-child", "empty", "valid", "invalid", "required",
- "optional", "read-only", "read-write",
- "default", "in-range", "out-of-range"
- };
+ {"link", "visited", "active", "focus", "target",
+ "hover", "first-child", "enabled", "disabled",
+ "checked", "indeterminate", "root", "last-child",
+ "first-of-type", "last-of-type", "only-of-type",
+ "only-child", "empty",
+ };
private static final String[] PSEUDOCLASS_CONSTANTSCSS2 =
- {
- "link", "visited", "active", "target", "focus",
- "hover", "first-child"
- };
+ {
+ "link", "visited", "active", "focus",
+ "hover", "first-child"
+ };
+
private static final String[] PSEUDOCLASS_CONSTANTSTV =
- {
- "link", "visited", "active", "focus", "first-child"
- };
+ {
+ "link", "visited", "active", "focus", "first-child"
+ };
private static final String[] PSEUDOCLASS_CONSTANTSCSS1 =
- {
- "link", "visited", "active", "target"
- };
+ {
+ "link", "visited", "active"
+ };
private static final String[] PSEUDOCLASS_CONSTANTS_MOBILE =
- {
- "link", "visited", "active", "focus"
- };
+ {
+ "link", "visited", "active", "focus"
+ };
private static final String[] PSEUDOELEMENT_CONSTANTSCSS3 =
- {
- "first-line", "first-letter", "before", "after",
- "selection", "marker", "value", "choices", "repeat-item",
- "repeat-index"
- };
+ {
+ "first-line", "first-letter", "before", "after",
+ };
private static final String[] PSEUDOELEMENT_CONSTANTSCSS2 =
- {
- "first-line", "first-letter", "before", "after"
- };
+ {
+ "first-line", "first-letter", "before", "after"
+ };
private static final String[] PSEUDOELEMENT_CONSTANTSCSS1 =
- {
- "first-line", "first-letter"
- };
+ {
+ "first-line", "first-letter"
+ };
private static final String[] PSEUDOFUNCTION_CONSTANTSCSS3 =
- {
- "nth-child", "nth-last-child", "nth-of-type", "nth-last-of-type",
- "lang", "contains", "not"
- };
+ {
+ "nth-child", "nth-last-child", "nth-of-type", "nth-last-of-type",
+ "lang", "not"
+ };
private static final String[] PSEUDOFUNCTION_CONSTANTSCSS2 =
- {
- "lang"
- };
+ {
+ "lang"
+ };
/**
* Returns the possible pseudo-classes for a profile
+ *
* @param profile the profile to get associated pseudo-classes
* @return the possible pseudo-classes for the profile
*/
public static String[] getPseudoClass(String profile) {
- if(profile == null || profile.equals("css2")|| profile.equals("css21")) {
- return PSEUDOCLASS_CONSTANTSCSS2;
- }
- if(profile.equals("css1")) {
- return PSEUDOCLASS_CONSTANTSCSS1;
- }
- if(profile.equals("css3")) {
- return PSEUDOCLASS_CONSTANTSCSS3;
- }
- if(profile.equals("tv")) {
- return PSEUDOCLASS_CONSTANTSTV;
- }
- if(profile.equals("mobile")) {
- return PSEUDOCLASS_CONSTANTS_MOBILE;
- }
- return null;
+ if (profile == null || profile.equals("css2") || profile.equals("css21")) {
+ return PSEUDOCLASS_CONSTANTSCSS2;
+ }
+ if (profile.equals("css3")) {
+ return PSEUDOCLASS_CONSTANTSCSS3;
+ }
+ if (profile.equals("css1")) {
+ return PSEUDOCLASS_CONSTANTSCSS1;
+ }
+ if (profile.equals("tv")) {
+ return PSEUDOCLASS_CONSTANTSTV;
+ }
+ if (profile.equals("mobile")) {
+ return PSEUDOCLASS_CONSTANTS_MOBILE;
+ }
+ return null;
}
/**
* Returns the possible pseudo-elements for a profile
- * @param profile the profile to get associated pseudo-elements
+ *
+ * @param version the CSS Version^Wlevel to get associated pseudo-elements
* @return the possible pseudo-elements for the profile
*/
- public static String[] getPseudoElement(String profile) {
- if(profile == null || profile.equals("css2") || profile.equals("css21")
- || profile.equals("tv")) {
- return PSEUDOELEMENT_CONSTANTSCSS2;
- }
- if(profile.equals("css1")) {
- return PSEUDOELEMENT_CONSTANTSCSS1;
- }
- if(profile.equals("css3")) {
- return PSEUDOELEMENT_CONSTANTSCSS3;
- }
- return null;
+ public static String[] getPseudoElement(CssVersion version) {
+ switch (version) {
+ case CSS2:
+ case CSS21:
+ return PSEUDOELEMENT_CONSTANTSCSS2;
+ case CSS3:
+ return PSEUDOELEMENT_CONSTANTSCSS3;
+ case CSS1:
+ return PSEUDOELEMENT_CONSTANTSCSS1;
+ default:
+ return null;
+
+ }
}
/**
* Returns the possible pseudo-functions for a profile
- * @param profile the profile to get associated pseudo-functions
+ *
+ * @param version the profile to get associated pseudo-functions
* @return the possible pseudo-functions for the profile
*/
- public static String[] getPseudoFunction(String profile) {
- if(profile == null || profile.equals("css2") || profile.equals("css21") ||
- profile.equals("mobile") || profile.equals("tv")) {
- return PSEUDOFUNCTION_CONSTANTSCSS2;
- }
- if(profile.equals("css3")) {
- return PSEUDOFUNCTION_CONSTANTSCSS3;
- }
- return null;
+ public static String[] getPseudoFunction(CssVersion version) {
+ switch (version) {
+ case CSS2:
+ case CSS21:
+ return PSEUDOFUNCTION_CONSTANTSCSS2;
+ case CSS3:
+ return PSEUDOFUNCTION_CONSTANTSCSS3;
+ case CSS1:
+ default:
+ return null;
+ }
}
/**
* Returns the possible pseudo-elements written as pseudo-classes
* for a specific profile
- * @param profile the profile to get associated exceptions to the rule
+ *
+ * @param version the profile to get associated exceptions to the rule
* @return the possible pseudo-elements/classes for the profile
- */
- public static String[] getPseudoElementExceptions(String profile) {
- if(profile == null || profile.equals("css2") ||
- profile.equals("css21") || profile.equals("css3") ||
- profile.equals("mobile") || profile.equals("tv")) {
- return PSEUDOELEMENT_CONSTANTSCSS2;
- }
- return null;
+ */
+ public static String[] getPseudoElementExceptions(CssVersion version) {
+ switch (version) {
+ case CSS2:
+ case CSS21:
+ case CSS3:
+ return PSEUDOELEMENT_CONSTANTSCSS2;
+ case CSS1:
+ default:
+ return null;
+ }
}
/**
- * Returns a PseudoFunctionSelector based on the name of the
+ * Returns a PseudoFunctionSelector based on the name of the
* selector
- * @param name, the name of the pseudofun selector
+ *
+ * @param name, the name of the pseudofun selector
* @param value, its value
* @throws InvalidParamException
*/
- public static PseudoFunctionSelector newPseudoFunction(String name,
- String value, ApplContext ac)
- throws InvalidParamException
- {
- if (name == null) {
- throw new InvalidParamException("pseudo",
- "null pseudofunction", ac);
- }
- if (name.equals("lang")) {
- return new PseudoFunctionLang(name, value);
- }
- if (name.equals("not")) {
- return new PseudoFunctionNot(name, value);
- }
- if (name.equals("contains")) {
- return new PseudoFunctionContains(name, value);
- }
- if (name.equals("nth-child")) {
- return new PseudoFunctionNthChild(name, value);
- }
- if (name.equals("nth-last-child")) {
- return new PseudoFunctionNthLastChild(name, value);
- }
- if (name.equals("nth-of-type")) {
- return new PseudoFunctionNthOfType(name, value);
- }
- if (name.equals("nth-last-of-type")) {
- return new PseudoFunctionNthLastOfType(name, value);
- }
- throw new InvalidParamException("pseudo",
- ":"+name, ac);
+ public static PseudoFunctionSelector newPseudoFunction(String name,
+ String value, ApplContext ac)
+ throws InvalidParamException {
+ if (name == null) {
+ throw new InvalidParamException("pseudo",
+ "null pseudofunction", ac);
+ }
+ if (name.equals("lang")) {
+ return new PseudoFunctionLang(name, value);
+ }
+ if (name.equals("not")) {
+ return new PseudoFunctionNot(name, value);
+ }
+ if (name.equals("nth-child")) {
+ return new PseudoFunctionNthChild(name, value);
+ }
+ if (name.equals("nth-last-child")) {
+ return new PseudoFunctionNthLastChild(name, value);
+ }
+ if (name.equals("nth-of-type")) {
+ return new PseudoFunctionNthOfType(name, value);
+ }
+ if (name.equals("nth-last-of-type")) {
+ return new PseudoFunctionNthLastOfType(name, value);
+ }
+ throw new InvalidParamException("pseudo",
+ ":" + name, ac);
}
}
Received on Tuesday, 4 October 2011 20:04:15 UTC