summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/kitfox/svg/xml/StyleSheet.java
diff options
context:
space:
mode:
authorkitfox2013-03-19 06:20:37 +0100
committerkitfox2013-03-19 06:20:37 +0100
commit6776ed9f1a81e517139d85eb6d2e28911fd0fc35 (patch)
treee169f598f518670f5434d75d1b76ceb3c0765d32 /src/main/java/com/kitfox/svg/xml/StyleSheet.java
parentError handling now sends warnings to Logger. (diff)
downloadsvg-salamander-core-6776ed9f1a81e517139d85eb6d2e28911fd0fc35.tar.gz
svg-salamander-core-6776ed9f1a81e517139d85eb6d2e28911fd0fc35.tar.xz
svg-salamander-core-6776ed9f1a81e517139d85eb6d2e28911fd0fc35.zip
Adding support for style sheets.
git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@153 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b
Diffstat (limited to 'src/main/java/com/kitfox/svg/xml/StyleSheet.java')
-rw-r--r--src/main/java/com/kitfox/svg/xml/StyleSheet.java56
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;
+ }
+
+}