home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / text / html / HTMLEditorKit$HTMLFactory.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  4.1 KB  |  74 lines

  1. package javax.swing.text.html;
  2.  
  3. import javax.swing.text.Element;
  4. import javax.swing.text.StyleConstants;
  5. import javax.swing.text.View;
  6. import javax.swing.text.ViewFactory;
  7. import javax.swing.text.html.CSS.Attribute;
  8. import javax.swing.text.html.HTML.Tag;
  9.  
  10. public class HTMLEditorKit$HTMLFactory implements ViewFactory {
  11.    public View create(Element var1) {
  12.       Object var2 = var1.getAttributes().getAttribute(StyleConstants.NameAttribute);
  13.       if (var2 instanceof HTML.Tag) {
  14.          HTML.Tag var3 = (HTML.Tag)var2;
  15.          if (var3 == Tag.CONTENT) {
  16.             return new InlineView(var1);
  17.          } else if (var3 == Tag.IMPLIED) {
  18.             String var4 = (String)var1.getAttributes().getAttribute(Attribute.WHITE_SPACE);
  19.             return (View)(var4 != null && var4.equals("pre") ? new LineView(var1) : new ParagraphView(var1));
  20.          } else if (var3 != Tag.P && var3 != Tag.H1 && var3 != Tag.H2 && var3 != Tag.H3 && var3 != Tag.H4 && var3 != Tag.H5 && var3 != Tag.H6 && var3 != Tag.DT) {
  21.             if (var3 != Tag.MENU && var3 != Tag.DIR && var3 != Tag.UL && var3 != Tag.OL) {
  22.                if (var3 != Tag.LI && var3 != Tag.CENTER && var3 != Tag.DL && var3 != Tag.DD && var3 != Tag.BODY && var3 != Tag.HTML && var3 != Tag.DIV && var3 != Tag.BLOCKQUOTE && var3 != Tag.PRE) {
  23.                   if (var3 == Tag.NOFRAMES) {
  24.                      return new NoFramesView(var1, 1);
  25.                   } else if (var3 == Tag.IMG) {
  26.                      return new ImageView(var1);
  27.                   } else if (var3 == Tag.ISINDEX) {
  28.                      return new IsindexView(var1);
  29.                   } else if (var3 == Tag.HR) {
  30.                      return new HRuleView(var1);
  31.                   } else if (var3 == Tag.BR) {
  32.                      return new BRView(var1);
  33.                   } else if (var3 == Tag.TABLE) {
  34.                      return new TableView(var1);
  35.                   } else if (var3 != Tag.INPUT && var3 != Tag.SELECT && var3 != Tag.TEXTAREA) {
  36.                      if (var3 == Tag.OBJECT) {
  37.                         return new ObjectView(var1);
  38.                      } else if (var3 == Tag.FRAMESET) {
  39.                         if (var1.getAttributes().isDefined(javax.swing.text.html.HTML.Attribute.ROWS)) {
  40.                            return new FrameSetView(var1, 1);
  41.                         } else if (var1.getAttributes().isDefined(javax.swing.text.html.HTML.Attribute.COLS)) {
  42.                            return new FrameSetView(var1, 0);
  43.                         } else {
  44.                            throw new Error("Can't build a" + var3 + ", " + var1 + ":" + "no ROWS or COLS defined.");
  45.                         }
  46.                      } else if (var3 == Tag.FRAME) {
  47.                         return new FrameView(var1);
  48.                      } else if (var3 instanceof HTML.UnknownTag) {
  49.                         return new HiddenTagView(var1);
  50.                      } else if (var3 == Tag.COMMENT) {
  51.                         return new CommentView(var1);
  52.                      } else if (var3 != Tag.HEAD && var3 != Tag.TITLE && var3 != Tag.META && var3 != Tag.LINK && var3 != Tag.STYLE && var3 != Tag.SCRIPT && var3 != Tag.AREA && var3 != Tag.MAP && var3 != Tag.PARAM && var3 != Tag.APPLET) {
  53.                         throw new Error("Can't build a " + var3 + ", " + var1);
  54.                      } else {
  55.                         return new HiddenTagView(var1);
  56.                      }
  57.                   } else {
  58.                      return new FormView(var1);
  59.                   }
  60.                } else {
  61.                   return new BlockView(var1, 1);
  62.                }
  63.             } else {
  64.                return new ListView(var1);
  65.             }
  66.          } else {
  67.             return new ParagraphView(var1);
  68.          }
  69.       } else {
  70.          throw new Error("Can't build a " + var1);
  71.       }
  72.    }
  73. }
  74.