diff options
Diffstat (limited to 'bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java')
-rw-r--r-- | bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java | 235 |
1 files changed, 0 insertions, 235 deletions
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java deleted file mode 100644 index 8f835cf06c..0000000000 --- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java +++ /dev/null @@ -1,235 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.css.ui.internal.image; - - - -import java.util.HashMap; -import java.util.Map; - -import org.eclipse.wst.css.core.internal.metamodel.CSSMMProperty; -import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel; -import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelFinder; -import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem; -import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule; -import org.w3c.dom.css.CSSCharsetRule; -import org.w3c.dom.css.CSSFontFaceRule; -import org.w3c.dom.css.CSSImportRule; -import org.w3c.dom.css.CSSMediaRule; -import org.w3c.dom.css.CSSPageRule; -import org.w3c.dom.css.CSSPrimitiveValue; -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSStyleRule; -import org.w3c.dom.css.CSSValue; - -/** - */ -public class CSSImageType { - - private final String fName; - - private CSSImageType(String name) { - this.fName = name; - } - - public String toString() { - return fName; - } - - public static final CSSImageType STYLESHEET = new CSSImageType("STYLESHEET"); //$NON-NLS-1$ - - public static final CSSImageType RULE_CHARSET = new CSSImageType("RULE_CHARSET"); //$NON-NLS-1$ - public static final CSSImageType RULE_FONTFACE = new CSSImageType("RULE_FONTFACE"); //$NON-NLS-1$ - public static final CSSImageType RULE_IMPORT = new CSSImageType("RULE_IMPORT"); //$NON-NLS-1$ - public static final CSSImageType RULE_MEDIA = new CSSImageType("RULE_MEDIA"); //$NON-NLS-1$ - public static final CSSImageType RULE_PAGE = new CSSImageType("RULE_PAGE"); //$NON-NLS-1$ - public static final CSSImageType RULE_STYLE = new CSSImageType("RULE_STYLE"); //$NON-NLS-1$ - public static final CSSImageType RULE_UNKNOWN = new CSSImageType("RULE_UNKNOWN"); //$NON-NLS-1$ - - public static final CSSImageType SELECTOR_CLASS = new CSSImageType("SELECTOR_CLASS"); //$NON-NLS-1$ - public static final CSSImageType SELECTOR_ID = new CSSImageType("SELECTOR_ID"); //$NON-NLS-1$ - public static final CSSImageType SELECTOR_DEFAULT = new CSSImageType("SELECTOR_DEFAULT"); //$NON-NLS-1$ - public static final CSSImageType SELECTOR_PSEUDO = new CSSImageType("SELECTOR_PSEUDO"); //$NON-NLS-1$ - public static final CSSImageType SELECTOR_TAG = new CSSImageType("SELECTOR_TAG"); //$NON-NLS-1$ - public static final CSSImageType SELECTOR_LINK = new CSSImageType("SELECTOR_LINK"); //$NON-NLS-1$ - - public static final CSSImageType VALUE_FUNCTION = new CSSImageType("VALUE_FUNCTION"); //$NON-NLS-1$ - public static final CSSImageType VALUE_NUMBER = new CSSImageType("VALUE_NUMBER"); //$NON-NLS-1$ - public static final CSSImageType VALUE_STRING = new CSSImageType("VALUE_STRING"); //$NON-NLS-1$ - - public static final CSSImageType CATEGORY_AURAL = new CSSImageType("CATEGORY_AURAL"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_BOX = new CSSImageType("CATEGORY_BOX"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_COLORANDBACKGROUND = new CSSImageType("CATEGORY_COLORANDBACKGROUND"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_CONTENT = new CSSImageType("CATEGORY_CONTENT"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_FONT = new CSSImageType("CATEGORY_FONT"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_PAGE = new CSSImageType("CATEGORY_PAGE"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_TABLES = new CSSImageType("CATEGORY_TABLES"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_TEXT = new CSSImageType("CATEGORY_TEXT"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_UI = new CSSImageType("CATEGORY_UI"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_VISUAL = new CSSImageType("CATEGORY_VISUAL"); //$NON-NLS-1$ - public static final CSSImageType CATEGORY_DEFAULT = new CSSImageType("CATEGORY_DEFAULT"); //$NON-NLS-1$ - - /** - * by node - */ - public static CSSImageType getImageType(ICSSNode node) { - CSSImageType imageType = null; - if (node instanceof CSSCharsetRule) { - imageType = RULE_CHARSET; - } else if (node instanceof CSSFontFaceRule) { - imageType = RULE_FONTFACE; - } else if (node instanceof CSSImportRule) { - imageType = RULE_IMPORT; - } else if (node instanceof CSSMediaRule) { - imageType = RULE_MEDIA; - } else if (node instanceof CSSPageRule) { - imageType = RULE_PAGE; - } else if (node instanceof CSSStyleRule) { - imageType = getImageType(((ICSSStyleRule) node).getSelectors()); - } else if (node instanceof CSSStyleDeclaration) { - ICSSNode parent = node.getParentNode(); - if (parent != null) { - return getImageType(parent); - } - } else if (node instanceof ICSSStyleDeclItem) { - String name = ((ICSSStyleDeclItem) node).getPropertyName(); - ICSSDocument doc = node.getOwnerDocument(); - ICSSModel model = (doc != null) ? doc.getModel() : null; - CSSMetaModelFinder finder = CSSMetaModelFinder.getInstance(); - CSSMetaModel metaModel = finder.findMetaModelFor(model); - // is font-face rule ? - ICSSNode parent = node.getParentNode(); - if (parent != null) { - parent = parent.getParentNode(); - if (parent instanceof CSSFontFaceRule) { - imageType = CSSImageType.CATEGORY_FONT; - } - } - if (imageType == null) { - CSSMMProperty prop = new CSSMetaModelUtil(metaModel).getProperty(name); - if (prop != null) { - String category = prop.getAttribute("category"); //$NON-NLS-1$ - imageType = getImageType(category); - } - if (imageType == null) { - imageType = CSSImageType.CATEGORY_DEFAULT; - } - } - } else if (node instanceof CSSValue) { - switch (((CSSValue) node).getCssValueType()) { - case CSSPrimitiveValue.CSS_NUMBER : - case CSSPrimitiveValue.CSS_PERCENTAGE : - case CSSPrimitiveValue.CSS_EMS : - case CSSPrimitiveValue.CSS_EXS : - case CSSPrimitiveValue.CSS_PX : - case CSSPrimitiveValue.CSS_CM : - case CSSPrimitiveValue.CSS_MM : - case CSSPrimitiveValue.CSS_IN : - case CSSPrimitiveValue.CSS_PT : - case CSSPrimitiveValue.CSS_PC : - case CSSPrimitiveValue.CSS_DEG : - case CSSPrimitiveValue.CSS_RAD : - case CSSPrimitiveValue.CSS_GRAD : - case CSSPrimitiveValue.CSS_MS : - case CSSPrimitiveValue.CSS_S : - case CSSPrimitiveValue.CSS_HZ : - case CSSPrimitiveValue.CSS_KHZ : - case CSSPrimitiveValue.CSS_DIMENSION : - case ICSSPrimitiveValue.CSS_INTEGER : - case ICSSPrimitiveValue.CSS_HASH : - imageType = VALUE_NUMBER; - break; - case CSSPrimitiveValue.CSS_ATTR : - case CSSPrimitiveValue.CSS_COUNTER : - case CSSPrimitiveValue.CSS_RECT : - case CSSPrimitiveValue.CSS_RGBCOLOR : - case CSSPrimitiveValue.CSS_URI : - case ICSSPrimitiveValue.CSS_FORMAT : - case ICSSPrimitiveValue.CSS_LOCAL : - imageType = VALUE_FUNCTION; - break; - default : - imageType = VALUE_STRING; - break; - } - } - return imageType; - } - - public static CSSImageType getImageType(ICSSSelectorList selectorList) { - if (selectorList == null || selectorList.getLength() == 0) { - return SELECTOR_DEFAULT; - } - CSSImageType imageType = null; - int nSelectors = selectorList.getLength(); - for (int i = 0; i < nSelectors; i++) { - CSSImageType candidate = getImageType(selectorList.getSelector(i)); - if (imageType == null) { - imageType = candidate; - } else if (imageType != candidate) { - imageType = null; - break; - } - } - - return (imageType == null) ? SELECTOR_DEFAULT : imageType; - } - - public static CSSImageType getImageType(ICSSSelector selector) { - CSSImageType imageType = SELECTOR_DEFAULT; - if (selector == null || selector.getLength() == 0) { - return imageType; - } - ICSSSelectorItem item = selector.getItem(selector.getLength() - 1); - if (item.getItemType() == ICSSSelectorItem.SIMPLE) { - ICSSSimpleSelector ss = (ICSSSimpleSelector) item; - if (0 < ss.getNumOfIDs()) { - imageType = SELECTOR_ID; - } else if (0 < ss.getNumOfClasses()) { - imageType = SELECTOR_CLASS; - } else if (0 < ss.getNumOfPseudoNames()) { - imageType = SELECTOR_PSEUDO; - } else { - imageType = SELECTOR_TAG; - } - } - return imageType; - } - - public static CSSImageType getImageType(String category) { - if (fCategoryMap == null) { - fCategoryMap = new HashMap(); - fCategoryMap.put("aural", CATEGORY_AURAL); //$NON-NLS-1$ - fCategoryMap.put("box", CATEGORY_BOX); //$NON-NLS-1$ - fCategoryMap.put("colorandbackground", CATEGORY_COLORANDBACKGROUND); //$NON-NLS-1$ - fCategoryMap.put("content", CATEGORY_CONTENT); //$NON-NLS-1$ - fCategoryMap.put("font", CATEGORY_FONT); //$NON-NLS-1$ - fCategoryMap.put("page", CATEGORY_PAGE); //$NON-NLS-1$ - fCategoryMap.put("tables", CATEGORY_TABLES); //$NON-NLS-1$ - fCategoryMap.put("text", CATEGORY_TEXT); //$NON-NLS-1$ - fCategoryMap.put("ui", CATEGORY_UI); //$NON-NLS-1$ - fCategoryMap.put("visual", CATEGORY_VISUAL); //$NON-NLS-1$ - } - CSSImageType imageType = (CSSImageType) fCategoryMap.get(category); - return (imageType == null) ? CATEGORY_DEFAULT : imageType; - } - - private static Map fCategoryMap = null; -}
\ No newline at end of file |