diff options
Diffstat (limited to 'src/main/java/com/kitfox/svg/xml/StyleSheet.java')
-rw-r--r-- | src/main/java/com/kitfox/svg/xml/StyleSheet.java | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/main/java/com/kitfox/svg/xml/StyleSheet.java b/src/main/java/com/kitfox/svg/xml/StyleSheet.java new file mode 100644 index 0000000..da3db2e --- /dev/null +++ b/src/main/java/com/kitfox/svg/xml/StyleSheet.java @@ -0,0 +1,56 @@ +/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package com.kitfox.svg.xml;
+
+import java.util.HashMap;
+
+/**
+ *
+ * @author kitfox
+ */
+public class StyleSheet
+{
+ HashMap ruleMap = new HashMap();
+
+ public void addStyleRule(StyleSheetRule rule, String value)
+ {
+ ruleMap.put(rule, value);
+ }
+
+ public boolean getStyle(StyleAttribute attrib, String tagName, String cssClass)
+ {
+ StyleSheetRule rule = new StyleSheetRule(attrib.getName(), tagName, cssClass);
+ String value = (String)ruleMap.get(rule);
+
+ if (value != null)
+ {
+ attrib.setStringValue(value);
+ return true;
+ }
+
+ //Try again using just class name
+ rule = new StyleSheetRule(attrib.getName(), null, cssClass);
+ value = (String)ruleMap.get(rule);
+
+ if (value != null)
+ {
+ attrib.setStringValue(value);
+ return true;
+ }
+
+ //Try again using just tag name
+ rule = new StyleSheetRule(attrib.getName(), tagName, null);
+ value = (String)ruleMap.get(rule);
+
+ if (value != null)
+ {
+ attrib.setStringValue(value);
+ return true;
+ }
+
+ return false;
+ }
+
+}
|