CSSRule.java 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package de.tu_darmstadt.informatik.tk.scopviz.ui.css;
  2. import java.util.HashSet;
  3. import java.util.Iterator;
  4. class CSSRule {
  5. // TODO comment
  6. HashSet<CSSSelector> selectors = new HashSet<CSSSelector>();
  7. // TODO comment
  8. HashSet<CSSDeclaration> declarations = new HashSet<CSSDeclaration>();
  9. // TODO comment
  10. String css;
  11. // TODO comment
  12. CSSRule(HashSet<CSSSelector> selectors, HashSet<CSSDeclaration> declarations) {
  13. super();
  14. this.selectors = selectors;
  15. this.declarations = declarations;
  16. css = "";
  17. for (CSSDeclaration dc : declarations) {
  18. css = css.concat(dc.toString()).concat("; ");
  19. }
  20. css = css.trim();
  21. }
  22. // TODO comment
  23. int ConditionsMetBy(CSSable suspect) {
  24. int result = 0;
  25. Iterator<CSSSelector> i = selectors.iterator();
  26. while (i.hasNext()) {
  27. CSSSelector condition = i.next();
  28. int r = -1;
  29. if (condition.ConditionsMetBy(suspect))
  30. r = condition.getValue();
  31. if (r > result)
  32. result = r;
  33. }
  34. return result;
  35. }
  36. // TODO comment
  37. public HashSet<CSSSelector> getSelectors() {
  38. return selectors;
  39. }
  40. // TODO comment
  41. public HashSet<CSSDeclaration> getDeclarations() {
  42. return declarations;
  43. }
  44. // TODO comment
  45. String getCSS() {
  46. return css;
  47. }
  48. @Override
  49. public String toString() {
  50. return selectors.toString().replace("[", "").replace("]", "") + " { " + css + " }";
  51. }
  52. }