Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dom/DOMStyleUtil.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dom/DOMStyleUtil.java182
1 files changed, 0 insertions, 182 deletions
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dom/DOMStyleUtil.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dom/DOMStyleUtil.java
deleted file mode 100644
index 243f3729a..000000000
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dom/DOMStyleUtil.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. 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:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.pagedesigner.dom;
-
-import java.util.Iterator;
-import java.util.Map;
-import java.util.StringTokenizer;
-
-import org.eclipse.jst.jsf.core.internal.tld.CMUtil;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Element;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.css.ElementCSSInlineStyle;
-
-/**
- * @author mengbo
- * @version 1.5
- */
-public final class DOMStyleUtil {
- /**
- * @param original
- * @param cssProperty
- * @return the inline style property
- */
- public static String getInlineStyleProperty(Element original,
- String cssProperty) {
- if (original instanceof ElementCSSInlineStyle) {
- CSSStyleDeclaration styledecl = ((ElementCSSInlineStyle) original)
- .getStyle();
- if (styledecl == null) {
- if (original.getAttribute("style") == null) { //$NON-NLS-1$
- return null;
- }
- // else mean it has style attribute.
- }
-
- if (styledecl != null) {
- return styledecl.getPropertyValue(cssProperty);
- }
- }
-
- // when we reach here, means we can't use the CSSStyleDeclaration API to
- // get style, we'll take the
- // pain to do the parsing and replacing.
- // normally should not happen. But anyway, we need to have a fail safe
- // path.
-
- String oldstyle = original.getAttribute("style"); //$NON-NLS-1$
- if (oldstyle == null || oldstyle.length() == 0) {
- return null;
- }
- StringTokenizer tokenizer = new StringTokenizer(oldstyle, ";"); //$NON-NLS-1$
-
- while (tokenizer.hasMoreTokens()) {
- String token = tokenizer.nextToken().trim();
- if (token.length() == 0) {
- continue;
- }
- int index = token.indexOf(':');
- if (index == -1) {
- continue;
- }
- String propertyName = token.substring(0, index).trim();
- if (cssProperty.equals(propertyName)) {
- // ok, we found the property
- return token.substring(index + 1).trim();
- }
- }
- return null;
- }
-
- /**
- * insert style into element
- *
- * @param original
- * @param map
- */
- public static void insertStyle(Element original, Map map) {
- if (original instanceof ElementCSSInlineStyle) {
- CSSStyleDeclaration styledecl = ((ElementCSSInlineStyle) original)
- .getStyle();
- if (styledecl == null) {
- if (original.getAttribute("style") == null) { //$NON-NLS-1$
- original.setAttribute("style", ""); //$NON-NLS-1$ //$NON-NLS-2$
- styledecl = ((ElementCSSInlineStyle) original).getStyle();
- }
- }
-
- if (styledecl != null) {
- for (Iterator iter = map.keySet().iterator(); iter.hasNext();) {
- String key = (String) iter.next();
- String value = (String) map.get(key);
- if (value == null) {
- styledecl.removeProperty(key);
- } else {
- styledecl.setProperty(key, value, null);
- }
- }
-
- return;
- }
- }
-
- // when we reach here, means we can't use the CSSStyleDeclaration API to
- // change style, we'll take the
- // pain to do the parsing and replacing.
- // normally should not happen. But anyway, we need to have a fail safe
- // path.
-
- String oldstyle = original.getAttribute("style"); //$NON-NLS-1$
- if (oldstyle == null) {
- oldstyle = ""; //$NON-NLS-1$
- }
- StringTokenizer tokenizer = new StringTokenizer(oldstyle, ";"); //$NON-NLS-1$
-
- StringBuffer buffer = new StringBuffer();
- while (tokenizer.hasMoreTokens()) {
- String token = tokenizer.nextToken().trim();
- if (token.length() == 0) {
- continue;
- }
- int index = token.indexOf(':');
- if (index == -1) {
- // wrong property? ignore.
- buffer.append(token).append("; "); //$NON-NLS-1$
- continue;
- }
- String propertyName = token.substring(0, index).trim();
-
- if (map.containsKey(propertyName)) {
- String propertyValue = (String) map.remove(propertyName);
- if (propertyValue == null) {
- // we want to remove this css property. so don't append
- // anything here
- } else {
- buffer.append(propertyName).append(": ").append( //$NON-NLS-1$
- propertyValue).append("; "); //$NON-NLS-1$
- }
- } else {
- buffer.append(token).append("; "); //$NON-NLS-1$
- }
- }
- // ok, we have loop through existing properties and did replacement.
- // now _styleProperties only contain those new CSS properties we need to
- for (Iterator iter = map.keySet().iterator(); iter.hasNext();) {
- String key = (String) iter.next();
- String value = (String) map.get(key);
- if (value != null) {
- buffer.append(key).append(": ").append(value).append("; "); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- original.setAttribute("style", buffer.toString()); //$NON-NLS-1$
- }
-
- /**
- * @param ele
- * @return true if supports the style attribute
- */
- public static boolean supportStyleAttribute(IDOMElement ele) {
- CMElementDeclaration decl = CMUtil.getElementDeclaration(ele);
- if (decl != null && decl.getAttributes().getNamedItem("style") != null) { //$NON-NLS-1$
- return true;
- }
- return false;
- }
-
- private DOMStyleUtil()
- {
- // util class, no external instantiation
- }
-
-}

Back to the top