home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text.html;
-
- import java.util.Enumeration;
- import java.util.Vector;
- import javax.swing.text.AttributeSet;
- import javax.swing.text.Document;
- import javax.swing.text.Element;
- import javax.swing.text.SimpleAttributeSet;
- import javax.swing.text.Style;
- import javax.swing.text.StyleConstants;
- import javax.swing.text.View;
- import javax.swing.text.html.HTML.Attribute;
- import javax.swing.text.html.HTML.Tag;
-
- class StyleSheet$ViewAttributeSet implements AttributeSet {
- static Vector muxList = new Vector();
- AttributeSet[] attrs;
- View host;
-
- StyleSheet$ViewAttributeSet(View var1) {
- this.host = var1;
- Document var2 = var1.getDocument();
- if (var2 instanceof HTMLDocument) {
- StyleSheet var3 = ((HTMLDocument)var2).getStyleSheet();
- Element var4 = var1.getElement();
- AttributeSet var5 = var4.getAttributes();
- muxList.removeAllElements();
- AttributeSet var6 = var3.translateHTMLToCSS(var5);
- if (var6.getAttributeCount() != 0) {
- muxList.addElement(var6);
- }
-
- if (var4.isLeaf()) {
- Enumeration var7 = var5.getAttributeNames();
-
- while(var7.hasMoreElements()) {
- Object var8 = var7.nextElement();
- if (var8 instanceof HTML.Tag) {
- if ((HTML.Tag)var8 == Tag.A) {
- Object var9 = var5.getAttribute((HTML.Tag)var8);
- if (var9 != null && var9 instanceof AttributeSet) {
- AttributeSet var10 = (AttributeSet)var9;
- if (var10.getAttribute(Attribute.HREF) == null) {
- continue;
- }
- }
- }
-
- Style var13 = var3.getRule((HTML.Tag)var8, var4);
- if (var13 != null) {
- muxList.addElement(var13);
- }
- }
- }
- } else {
- HTML.Tag var11 = (HTML.Tag)var5.getAttribute(StyleConstants.NameAttribute);
- if (var11 == Tag.IMPLIED) {
- var11 = Tag.P;
- }
-
- Style var12 = var3.getRule(var11, var4);
- if (var12 != null) {
- muxList.addElement(var12);
- }
- }
- }
-
- this.attrs = new AttributeSet[muxList.size()];
- muxList.copyInto(this.attrs);
- }
-
- public boolean containsAttribute(Object var1, Object var2) {
- return var2.equals(this.getAttribute(var1));
- }
-
- public boolean containsAttributes(AttributeSet var1) {
- boolean var2 = true;
-
- Object var4;
- for(Enumeration var3 = var1.getAttributeNames(); var2 && var3.hasMoreElements(); var2 = var1.getAttribute(var4).equals(this.getAttribute(var4))) {
- var4 = var3.nextElement();
- }
-
- return var2;
- }
-
- public AttributeSet copyAttributes() {
- SimpleAttributeSet var1 = new SimpleAttributeSet();
- boolean var2 = false;
-
- for(int var3 = 0; var3 < this.attrs.length; ++var3) {
- var1.addAttributes(this.attrs[var3]);
- }
-
- return var1;
- }
-
- public Object getAttribute(Object var1) {
- int var2 = this.attrs.length;
-
- for(int var3 = 0; var3 < var2; ++var3) {
- Object var4 = this.attrs[var3].getAttribute(var1);
- if (var4 != null) {
- return var4;
- }
- }
-
- if (var1 instanceof CSS.Attribute) {
- CSS.Attribute var6 = (CSS.Attribute)var1;
- if (var6.isInherited()) {
- AttributeSet var5 = this.getResolveParent();
- if (var5 != null) {
- return var5.getAttribute(var1);
- }
- }
- }
-
- return null;
- }
-
- public int getAttributeCount() {
- int var1 = 0;
-
- for(int var2 = 0; var2 < this.attrs.length; ++var2) {
- var1 += this.attrs[var2].getAttributeCount();
- }
-
- return var1;
- }
-
- public Enumeration getAttributeNames() {
- return null;
- }
-
- public AttributeSet getResolveParent() {
- View var1 = this.host.getParent();
- if (var1 != null) {
- var1.getElement().getName();
- } else {
- String var10000 = "*none*";
- }
-
- return var1 != null ? var1.getAttributes() : null;
- }
-
- public boolean isDefined(Object var1) {
- boolean var2 = false;
-
- for(int var3 = 0; var3 < this.attrs.length; ++var3) {
- if (this.attrs[var3].isDefined(var1)) {
- return true;
- }
- }
-
- return false;
- }
-
- public boolean isEqual(AttributeSet var1) {
- return this.getAttributeCount() == var1.getAttributeCount() && this.containsAttributes(var1);
- }
- }
-