home *** CD-ROM | disk | FTP | other *** search
/ Internet CD 2005 August / MICD_2005_08.iso / Multimedia / Twist / TwistEval.exe / Main / webhelp0.cab / WebHelp.class (.txt) < prev   
Encoding:
Java Class File  |  2001-06-19  |  16.4 KB  |  1,205 lines

  1. import hhapplet.AboutDialogBox;
  2. import hhapplet.BsscHelpCommandAdapter;
  3. import hhapplet.ButtonLauncher;
  4. import hhapplet.ButtonPushEvent;
  5. import hhapplet.ButtonPushEventListener;
  6. import hhapplet.DialogDoneTarget;
  7. import hhapplet.FTSPane;
  8. import hhapplet.FTSParser;
  9. import hhapplet.FTSSearcher;
  10. import hhapplet.IndexPane;
  11. import hhapplet.IndexSecondaryDialog;
  12. import hhapplet.IndexSecondaryEntry;
  13. import hhapplet.LabelLauncher;
  14. import hhapplet.PopupMenu;
  15. import hhapplet.ResourceLib;
  16. import hhapplet.SiteMapParserToContents;
  17. import hhapplet.SiteMapParserToIndex;
  18. import hhapplet.SplashScreen;
  19. import hhapplet.TabButton;
  20. import hhapplet.TabManagerAdaper;
  21. import hhapplet.TabPanel;
  22. import hhapplet.URLFileHandler;
  23. import java.applet.Applet;
  24. import java.awt.BorderLayout;
  25. import java.awt.CardLayout;
  26. import java.awt.Color;
  27. import java.awt.Component;
  28. import java.awt.Container;
  29. import java.awt.Event;
  30. import java.awt.Graphics;
  31. import java.awt.Image;
  32. import java.awt.Label;
  33. import java.awt.LayoutManager;
  34. import java.awt.Panel;
  35. import java.awt.Rectangle;
  36. import java.awt.Window;
  37. import java.io.IOException;
  38. import java.net.URL;
  39. import java.util.Vector;
  40. import sitemap.MyBufferedInputStream;
  41. import sitemap.SiteMapParser;
  42. import treeview.TreeViewImageSet;
  43.  
  44. public class WebHelp extends Applet implements ButtonPushEventListener, BsscHelpCommandAdapter, TabManagerAdaper {
  45.    private static final String STR_APPLET_ID = "WebHelp Applet Version 2.00.000";
  46.    private static final String STR_COPYRIGHT = "Copyright (c) 1998-2000 eHelp Corporation. All rights reserved.";
  47.    private boolean m_bShowTab = true;
  48.    private Window m_winFrameToShow = null;
  49.    private String m_strContentsFile = null;
  50.    private String m_strIndexFile = null;
  51.    private String m_strSearchFile = null;
  52.    private String m_strHelpFile = null;
  53.    private boolean m_bContentsLoaded = false;
  54.    private boolean m_bIndexLoaded = false;
  55.    private boolean m_bSearchLoaded = false;
  56.    private boolean m_bHelpLoaded = false;
  57.    private String m_strCurrentCommand = null;
  58.    private Panel m_pnlNav = null;
  59.    private TabPanel m_pnlTabs = null;
  60.    private CardLayout m_clLayout = null;
  61.    private boolean m_bParsing = false;
  62.    private Image[] m_imgList = null;
  63.    private TreeViewImageSet m_tvisImages = null;
  64.    private SiteMapParser m_smpContents = null;
  65.    private SiteMapParser m_smpIndex = null;
  66.    private SiteMapParser m_smpHelp = null;
  67.    private IndexPane m_ipIndex = null;
  68.    private FTSPane m_spSearch = null;
  69.    private Thread contents_thread = null;
  70.    private Thread parser_thread = null;
  71.    private Thread search_thread = null;
  72.    private Thread sync_thread = null;
  73.    private TabButton m_tbtnToc = null;
  74.    private TabButton m_tbtnIndex = null;
  75.    private TabButton m_tbtnSearch = null;
  76.    private TabButton m_tbtnHelp = null;
  77.    private boolean m_bMustHaveSize = false;
  78.    private boolean m_bIsIE3 = false;
  79.    private long m_lnTimeCreated = System.currentTimeMillis();
  80.    private FTSParser m_ftsParser = null;
  81.    private FTSSearcher m_ftsSearcher = null;
  82.    boolean m_bCanAccessJSObject = false;
  83.    private boolean m_bCanAccessJSObjectChecked = false;
  84.  
  85.    public void stop() {
  86.       System.out.println("!!!Applet Stop!!!");
  87.  
  88.       try {
  89.          if (this.m_winFrameToShow != null) {
  90.             this.m_winFrameToShow.hide();
  91.          }
  92.  
  93.          System.gc();
  94.          Runtime.getRuntime().gc();
  95.       } catch (Exception var2) {
  96.          ((Throwable)var2).printStackTrace();
  97.       }
  98.    }
  99.  
  100.    public boolean gotFocus(Event var1, Object var2) {
  101.       ((Component)this).nextFocus();
  102.       return true;
  103.    }
  104.  
  105.    public void notifyButtonPushEvent(ButtonPushEvent var1) {
  106.       if (var1.getSource() == this.m_tbtnToc) {
  107.          this.DoContents(this.m_strContentsFile);
  108.       } else if (var1.getSource() == this.m_tbtnIndex) {
  109.          this.DoIndex(this.m_strIndexFile);
  110.       } else if (var1.getSource() == this.m_tbtnSearch) {
  111.          this.DoSearch(this.m_strSearchFile);
  112.       } else {
  113.          if (this.m_tbtnHelp != null && var1.getSource() == this.m_tbtnHelp) {
  114.             this.DoHelp(this.m_strHelpFile);
  115.          }
  116.  
  117.       }
  118.    }
  119.  
  120.    private void DoBadCommand(String var1) {
  121.       ((Container)this).add(new Label("The command \"" + var1 + "\" is unrecognised"));
  122.    }
  123.  
  124.    private void DoHHVersion(boolean var1) {
  125.       String var2 = null;
  126.       Object var3 = null;
  127.       String var4 = null;
  128.       if (!var1) {
  129.          var2 = ((Applet)this).getParameter("Button");
  130.          String var12 = ((Applet)this).getParameter("Text");
  131.          if (var2 == null && var12 == null) {
  132.             return;
  133.          }
  134.  
  135.          var4 = var2 != null ? var2 : var12;
  136.       }
  137.  
  138.       Vector var5 = new Vector();
  139.       var5.addElement("WebHelp Applet Version 2.00.000");
  140.       var5.addElement("Copyright (c) 1998-2000 eHelp Corporation. All rights reserved.");
  141.  
  142.       try {
  143.          var5.addElement("Java VM vendor: " + System.getProperty("java.vendor"));
  144.       } catch (Exception var11) {
  145.          ((Throwable)var11).printStackTrace();
  146.       }
  147.  
  148.       try {
  149.          var5.addElement("Java version: " + System.getProperty("java.version"));
  150.       } catch (Exception var10) {
  151.          ((Throwable)var10).printStackTrace();
  152.       }
  153.  
  154.       try {
  155.          var5.addElement("Java library version: " + System.getProperty("java.class.version"));
  156.       } catch (Exception var9) {
  157.          ((Throwable)var9).printStackTrace();
  158.       }
  159.  
  160.       try {
  161.          String var6 = "Operating System: " + System.getProperty("os.name") + " " + System.getProperty("os.version") + " (" + System.getProperty("os.arch") + ")";
  162.          var5.addElement(var6);
  163.       } catch (Exception var8) {
  164.          ((Throwable)var8).printStackTrace();
  165.       }
  166.  
  167.       AboutDialogBox var13 = new AboutDialogBox("About WebHelp Applet", var5);
  168.       if (var1) {
  169.          var13.show();
  170.       } else {
  171.          Object var7 = var2 != null ? new ButtonLauncher(var4, var13) : new LabelLauncher(var4, var13);
  172.          ((Container)this).setLayout(new BorderLayout());
  173.          ((Container)this).add("Center", (Component)var7);
  174.          this.m_winFrameToShow = var13;
  175.       }
  176.    }
  177.  
  178.    private void DoAutoSync(String var1) {
  179.       if (this.m_smpContents != null) {
  180.          if (this.sync_thread != null && this.sync_thread.isAlive()) {
  181.             this.sync_thread.stop();
  182.          }
  183.  
  184.          this.sync_thread = new DoSync(this.m_smpContents, var1, "SyncThread");
  185.          this.sync_thread.start();
  186.       }
  187.  
  188.    }
  189.  
  190.    public void start() {
  191.       System.out.println("!!!Applet Start!!!");
  192.  
  193.       try {
  194.          if (this.m_bMustHaveSize) {
  195.             this.checkSize();
  196.          }
  197.       } catch (Exception var2) {
  198.          ((Throwable)var2).printStackTrace();
  199.       }
  200.  
  201.       if (System.getProperty("java.vendor").indexOf("Netscape") == -1) {
  202.          this.myrun();
  203.       }
  204.  
  205.    }
  206.  
  207.    public String getAppletInfo() {
  208.       return "WebHelp Applet Version 2.00.000" + "\r\n" + "Copyright (c) 1998-2000 eHelp Corporation. All rights reserved.";
  209.    }
  210.  
  211.    private void DoHelp(String var1) {
  212.       boolean var2 = false;
  213.       if (this.m_tbtnSearch != null) {
  214.          this.m_tbtnSearch.enable();
  215.          this.m_tbtnSearch.SetDrawLeft(true);
  216.          if (!var2) {
  217.             var2 = true;
  218.             this.m_tbtnSearch.SetDrawRight(false);
  219.          } else {
  220.             this.m_tbtnSearch.SetDrawRight(true);
  221.          }
  222.  
  223.          this.m_tbtnSearch.repaint(0L);
  224.       }
  225.  
  226.       if (this.m_tbtnIndex != null) {
  227.          this.m_tbtnIndex.enable();
  228.          this.m_tbtnIndex.SetDrawLeft(true);
  229.          if (!var2) {
  230.             var2 = true;
  231.             this.m_tbtnIndex.SetDrawRight(false);
  232.          } else {
  233.             this.m_tbtnIndex.SetDrawRight(true);
  234.          }
  235.  
  236.          this.m_tbtnIndex.repaint(0L);
  237.       }
  238.  
  239.       if (this.m_tbtnToc != null) {
  240.          this.m_tbtnToc.enable();
  241.          this.m_tbtnToc.SetDrawLeft(true);
  242.          if (!var2) {
  243.             var2 = true;
  244.             this.m_tbtnToc.SetDrawRight(false);
  245.          } else {
  246.             this.m_tbtnToc.SetDrawRight(true);
  247.          }
  248.  
  249.          this.m_tbtnToc.repaint(0L);
  250.       }
  251.  
  252.       if (this.m_tbtnHelp != null) {
  253.          this.m_tbtnHelp.disable();
  254.          this.m_tbtnHelp.repaint(0L);
  255.       }
  256.  
  257.       this.RepaintTabs();
  258.    }
  259.  
  260.    public void reshape(int var1, int var2, int var3, int var4) {
  261.       System.out.println("!!!Applet Reshape!!!");
  262.  
  263.       try {
  264.          if (!System.getProperty("java.vendor").startsWith("Netscape") || !System.getProperty("os.name").startsWith("Windows") && !System.getProperty("os.name").startsWith("Mac")) {
  265.             super.reshape(var1, var2, var3, var4);
  266.             ((Container)this).validate();
  267.          } else {
  268.             super.reshape(var1, var2, var3, var4);
  269.          }
  270.       } catch (Exception var6) {
  271.          ((Throwable)var6).printStackTrace();
  272.       }
  273.    }
  274.  
  275.    private void DoNavPane() {
  276.       ((Component)this).setBackground(new Color(192, 192, 192));
  277.       ((Container)this).setLayout(new BorderLayout());
  278.       this.m_strContentsFile = ((Applet)this).getParameter("ContentsFile");
  279.       this.m_strIndexFile = ((Applet)this).getParameter("IndexFile");
  280.       this.m_strSearchFile = ((Applet)this).getParameter("SearchFile");
  281.       this.m_strHelpFile = ((Applet)this).getParameter("HelpFile");
  282.       String var1 = ((Applet)this).getParameter("HideTabs");
  283.       if (var1 != null && var1.toUpperCase().compareTo("TRUE") == 0) {
  284.          this.m_bShowTab = false;
  285.       } else {
  286.          this.m_bShowTab = true;
  287.       }
  288.  
  289.       String var2 = null;
  290.       if (this.m_strContentsFile != null) {
  291.          var2 = ((Applet)this).getParameter("ContentsTab");
  292.          if (var2 == null) {
  293.             var2 = ResourceLib.GetRes("Contents");
  294.          }
  295.       }
  296.  
  297.       String var3 = null;
  298.       if (this.m_strIndexFile != null) {
  299.          var3 = ((Applet)this).getParameter("IndexTab");
  300.          if (var3 == null) {
  301.             var3 = ResourceLib.GetRes("Index");
  302.          }
  303.       }
  304.  
  305.       String var4 = null;
  306.       if (this.m_strSearchFile != null) {
  307.          var4 = ((Applet)this).getParameter("SearchTab");
  308.          if (var4 == null) {
  309.             var4 = ResourceLib.GetRes("Search");
  310.          }
  311.       }
  312.  
  313.       String var5 = null;
  314.       if (this.m_strHelpFile != null) {
  315.          var5 = ((Applet)this).getParameter("HelpTab");
  316.          if (var5 == null) {
  317.             var5 = "Help";
  318.          }
  319.       }
  320.  
  321.       this.m_pnlTabs = null;
  322.       this.m_pnlTabs = new TabPanel();
  323.       this.m_pnlTabs.setLayout((LayoutManager)null);
  324.       if (this.m_strContentsFile != null) {
  325.          this.m_tbtnToc = new TabButton(var2, this);
  326.          this.m_tbtnToc.addButtonPushEventListener(this);
  327.          this.m_pnlTabs.add(this.m_tbtnToc);
  328.       }
  329.  
  330.       if (this.m_strIndexFile != null) {
  331.          this.m_tbtnIndex = new TabButton(var3, this);
  332.          this.m_tbtnIndex.addButtonPushEventListener(this);
  333.          this.m_pnlTabs.add(this.m_tbtnIndex);
  334.       }
  335.  
  336.       if (this.m_strSearchFile != null) {
  337.          this.m_tbtnSearch = new TabButton(var4, this);
  338.          this.m_tbtnSearch.addButtonPushEventListener(this);
  339.          this.m_pnlTabs.add(this.m_tbtnSearch);
  340.       }
  341.  
  342.       if (this.m_strHelpFile != null) {
  343.          this.m_tbtnHelp = new TabButton(var5, this);
  344.          this.m_tbtnHelp.addButtonPushEventListener(this);
  345.          this.m_pnlTabs.add(this.m_tbtnHelp);
  346.       }
  347.  
  348.       if (this.m_bShowTab) {
  349.          ((Container)this).add("North", this.m_pnlTabs);
  350.       }
  351.  
  352.       Rectangle var6 = ((Component)this).bounds();
  353.       if (this.m_tbtnToc != null) {
  354.          this.rods_reshape(this.m_tbtnToc, 1, var6.y, this.m_tbtnToc.preferredSize().width, 25);
  355.       }
  356.  
  357.       if (this.m_tbtnIndex != null) {
  358.          int var7 = 1;
  359.          if (this.m_tbtnToc != null) {
  360.             var7 += this.m_tbtnToc.bounds().width;
  361.          }
  362.  
  363.          this.rods_reshape(this.m_tbtnIndex, var7, var6.y, this.m_tbtnIndex.preferredSize().width, 25);
  364.       }
  365.  
  366.       if (this.m_tbtnSearch != null) {
  367.          int var14 = 1;
  368.          if (this.m_tbtnToc != null) {
  369.             var14 += this.m_tbtnToc.bounds().width;
  370.          }
  371.  
  372.          if (this.m_tbtnIndex != null) {
  373.             var14 += this.m_tbtnIndex.bounds().width;
  374.          }
  375.  
  376.          this.rods_reshape(this.m_tbtnSearch, var14, var6.y, this.m_tbtnSearch.preferredSize().width, 25);
  377.       }
  378.  
  379.       if (this.m_tbtnHelp != null) {
  380.          int var15 = 1;
  381.          if (this.m_tbtnToc != null) {
  382.             var15 += this.m_tbtnToc.bounds().width;
  383.          }
  384.  
  385.          if (this.m_tbtnIndex != null) {
  386.             var15 += this.m_tbtnIndex.bounds().width;
  387.          }
  388.  
  389.          if (this.m_tbtnSearch != null) {
  390.             var15 += this.m_tbtnSearch.bounds().width;
  391.          }
  392.  
  393.          this.rods_reshape(this.m_tbtnHelp, var15, var6.y, this.m_tbtnHelp.preferredSize().width, 25);
  394.       }
  395.  
  396.       this.rods_reshape(this.m_pnlTabs, var6.x, var6.y, var6.width, 28);
  397.       this.m_pnlTabs.requestFocus();
  398.       if (this.m_tbtnIndex != null) {
  399.          this.m_tbtnIndex.active();
  400.       }
  401.  
  402.       if (this.m_tbtnToc != null) {
  403.          this.m_tbtnToc.active();
  404.       }
  405.  
  406.       if (this.m_tbtnSearch != null) {
  407.          this.m_tbtnSearch.active();
  408.       }
  409.  
  410.       if (this.m_tbtnHelp != null) {
  411.          this.m_tbtnHelp.active();
  412.       }
  413.  
  414.       if (this.m_tbtnToc != null) {
  415.          this.m_tbtnToc.disactive();
  416.       }
  417.  
  418.       if (this.m_tbtnIndex != null) {
  419.          this.m_tbtnIndex.disactive();
  420.       }
  421.  
  422.       if (this.m_tbtnSearch != null) {
  423.          this.m_tbtnSearch.disactive();
  424.       }
  425.  
  426.       if (this.m_tbtnHelp != null) {
  427.          this.m_tbtnHelp.disactive();
  428.       }
  429.  
  430.       boolean var16 = true;
  431.       boolean var8 = true;
  432.       String var9 = ((Applet)this).getParameter("CurrentTab");
  433.       if (var9 != null && (var9.equalsIgnoreCase("Index") || var9.equalsIgnoreCase("Search"))) {
  434.          var16 = false;
  435.       }
  436.  
  437.       if (var9 != null && (var9.equalsIgnoreCase("Contents") || var9.equalsIgnoreCase("Search"))) {
  438.          var8 = false;
  439.       }
  440.  
  441.       Object var10 = null;
  442.       ButtonPushEvent var17;
  443.       if (var16) {
  444.          var17 = new ButtonPushEvent(this.m_tbtnToc, 0, 0);
  445.       } else if (var8) {
  446.          var17 = new ButtonPushEvent(this.m_tbtnIndex, 0, 0);
  447.       } else {
  448.          var17 = new ButtonPushEvent(this.m_tbtnSearch, 0, 0);
  449.       }
  450.  
  451.       this.notifyButtonPushEvent(var17);
  452.       if (this.m_bShowTab) {
  453.          try {
  454.             String var11 = System.getProperty("java.vendor");
  455.             if (var11.startsWith("Netscape")) {
  456.                Panel var12 = new Panel();
  457.                ((Container)var12).setLayout((LayoutManager)null);
  458.                ((Component)var12).resize(((Component)this).bounds().width, 14);
  459.                ((Container)this).add("South", var12);
  460.                return;
  461.             }
  462.          } catch (Exception var13) {
  463.             ((Throwable)var13).printStackTrace();
  464.          }
  465.       }
  466.  
  467.    }
  468.  
  469.    public synchronized void Command(String var1, String var2) {
  470.       try {
  471.          if (var1 != null) {
  472.             if (var1.equalsIgnoreCase("SyncToc")) {
  473.                this.DoSync(var2);
  474.             } else if (var1.equalsIgnoreCase("AutoSync")) {
  475.                this.DoAutoSync(var2);
  476.             } else if (var1.equalsIgnoreCase("Contents")) {
  477.                this.DoContents(var2);
  478.             } else if (var1.equalsIgnoreCase("Index")) {
  479.                this.DoIndex(var2);
  480.             } else if (var1.equalsIgnoreCase("Search")) {
  481.                this.DoSearch(var2);
  482.             } else if (var1.equalsIgnoreCase("Version")) {
  483.                this.ShowVersion();
  484.             } else {
  485.                this.DoBadCommand("Command method does not support " + var1);
  486.             }
  487.          }
  488.       } catch (Exception var4) {
  489.          ((Throwable)var4).printStackTrace();
  490.       }
  491.    }
  492.  
  493.    public void paint(Graphics var1) {
  494.       System.out.println("!!!Applet paint!!!");
  495.       super.paint(var1);
  496.    }
  497.  
  498.    public void printVMInfo() {
  499.       try {
  500.          System.out.println(System.getProperty("java.version"));
  501.          System.out.println(System.getProperty("java.vendor"));
  502.          System.out.println(System.getProperty("java.vendor.url"));
  503.          System.out.println(System.getProperty("java.home"));
  504.          System.out.println(System.getProperty("java.class.path"));
  505.          System.out.println(System.getProperty("java.class.version"));
  506.          System.out.println(System.getProperty("os.name"));
  507.          System.out.println(System.getProperty("os.arch"));
  508.          System.out.println(System.getProperty("os.version"));
  509.          System.out.println(System.getProperty("user.name"));
  510.          System.out.println(System.getProperty("user.home"));
  511.          System.out.println(System.getProperty("user.dir"));
  512.       } catch (Exception var2) {
  513.          ((Throwable)var2).printStackTrace();
  514.       }
  515.    }
  516.  
  517.    public void destroy() {
  518.       System.out.println("!!!Applet Destroy!!!");
  519.  
  520.       try {
  521.          if (this.m_winFrameToShow != null) {
  522.             this.m_winFrameToShow.hide();
  523.             this.m_winFrameToShow.dispose();
  524.             this.m_winFrameToShow = null;
  525.          }
  526.  
  527.          if (this.m_smpContents != null) {
  528.             this.m_smpContents.closeFiles();
  529.             this.m_smpContents = null;
  530.          }
  531.  
  532.          if (this.m_smpIndex != null) {
  533.             this.m_smpIndex.closeFiles();
  534.             this.m_smpIndex = null;
  535.          }
  536.  
  537.          if (this.m_smpHelp != null) {
  538.             this.m_smpHelp.closeFiles();
  539.             this.m_smpHelp = null;
  540.          }
  541.  
  542.          if (this.m_ipIndex != null && this.m_ipIndex.getList() != null) {
  543.             this.m_ipIndex.getList().clear();
  544.          }
  545.  
  546.          if (this.m_ipIndex != null && this.m_ipIndex.getForAppleList() != null) {
  547.             this.m_ipIndex.getForAppleList().clear();
  548.          }
  549.  
  550.          if (this.m_ipIndex != null) {
  551.             this.m_ipIndex = null;
  552.          }
  553.  
  554.          if (this.m_spSearch != null && this.m_spSearch.getList() != null) {
  555.             this.m_spSearch.getList().clear();
  556.             this.m_spSearch = null;
  557.          }
  558.  
  559.          if (this.m_tvisImages != null) {
  560.             this.m_tvisImages.releaseImages(this.m_imgList);
  561.             this.m_tvisImages = null;
  562.          }
  563.  
  564.          if (this.contents_thread != null && this.contents_thread.isAlive()) {
  565.             this.contents_thread.stop();
  566.             this.contents_thread = null;
  567.          }
  568.  
  569.          if (this.parser_thread != null && this.parser_thread.isAlive()) {
  570.             this.parser_thread.stop();
  571.             this.parser_thread = null;
  572.          }
  573.  
  574.          if (this.search_thread != null && this.search_thread.isAlive()) {
  575.             this.search_thread.stop();
  576.             this.search_thread = null;
  577.          }
  578.  
  579.          if (this.sync_thread != null && this.sync_thread.isAlive()) {
  580.             this.sync_thread.stop();
  581.             this.sync_thread = null;
  582.          }
  583.  
  584.          System.gc();
  585.          Runtime.getRuntime().gc();
  586.       } catch (Exception var2) {
  587.          ((Throwable)var2).printStackTrace();
  588.       }
  589.    }
  590.  
  591.    protected void rods_reshape(Component var1, int var2, int var3, int var4, int var5) {
  592.       var1.move(var2, var3);
  593.       var1.resize(var4, var5);
  594.    }
  595.  
  596.    private void DoContents(String var1) {
  597.       boolean var2 = false;
  598.       if (this.m_tbtnToc != null) {
  599.          this.m_tbtnToc.active();
  600.          this.m_tbtnToc.repaint(0L);
  601.       }
  602.  
  603.       if (this.m_tbtnIndex != null) {
  604.          this.m_tbtnIndex.disactive();
  605.          this.m_tbtnIndex.SetDrawRight(true);
  606.          if (!var2) {
  607.             var2 = true;
  608.             this.m_tbtnIndex.SetDrawLeft(false);
  609.          } else {
  610.             this.m_tbtnIndex.SetDrawLeft(true);
  611.          }
  612.  
  613.          this.m_tbtnIndex.repaint(0L);
  614.       }
  615.  
  616.       if (this.m_tbtnSearch != null) {
  617.          this.m_tbtnSearch.disactive();
  618.          this.m_tbtnSearch.SetDrawRight(true);
  619.          if (!var2) {
  620.             var2 = true;
  621.             this.m_tbtnSearch.SetDrawLeft(false);
  622.          } else {
  623.             this.m_tbtnSearch.SetDrawLeft(true);
  624.          }
  625.  
  626.          this.m_tbtnSearch.repaint(0L);
  627.       }
  628.  
  629.       if (this.m_tbtnHelp != null) {
  630.          this.m_tbtnHelp.disactive();
  631.          this.m_tbtnHelp.SetDrawRight(true);
  632.          if (!var2) {
  633.             var2 = true;
  634.             this.m_tbtnHelp.SetDrawLeft(false);
  635.          } else {
  636.             this.m_tbtnHelp.SetDrawLeft(true);
  637.          }
  638.  
  639.          this.m_tbtnHelp.repaint(0L);
  640.       }
  641.  
  642.       this.RepaintTabs();
  643.       if (var1 == null) {
  644.          ((Container)this).setLayout(new BorderLayout());
  645.       }
  646.  
  647.       if (this.m_pnlNav == null) {
  648.          this.m_clLayout = new CardLayout();
  649.          this.m_pnlNav = new Panel();
  650.          this.m_pnlNav.setLayout(this.m_clLayout);
  651.          ((Container)this).add("Center", this.m_pnlNav);
  652.       }
  653.  
  654.       if (this.m_tvisImages == null) {
  655.          this.m_tvisImages = new TreeViewImageSet();
  656.          this.m_imgList = new Image[14];
  657.          this.m_imgList = this.m_tvisImages.reallyGetImages();
  658.       }
  659.  
  660.       if (var1 == null) {
  661.          var1 = ((Applet)this).getParameter("Item1");
  662.       }
  663.  
  664.       if (this.m_bContentsLoaded && this.m_strContentsFile != null && this.m_strContentsFile.equals(var1)) {
  665.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Contents"));
  666.          if (this.m_smpContents != null) {
  667.             ((SiteMapParserToContents)this.m_smpContents.getOutput()).getTree().requestFocus();
  668.          }
  669.  
  670.       } else {
  671.          this.m_strContentsFile = var1;
  672.          this.m_bContentsLoaded = true;
  673.          this.m_bMustHaveSize = true;
  674.          ((Component)this).repaint(0L);
  675.          this.RepaintTabs();
  676.          SiteMapParserToContents var3 = new SiteMapParserToContents(this, this.m_imgList);
  677.          if (this.m_smpContents != null) {
  678.             this.m_smpContents.closeFiles();
  679.          }
  680.  
  681.          ((Applet)this).showStatus(ResourceLib.GetRes("LoadingContents"));
  682.          this.m_pnlNav.add(ResourceLib.GetRes("Contents"), var3.getTree());
  683.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Contents"));
  684.          var3.getTree().requestFocus();
  685.          ((Component)this).repaint(0L);
  686.          ((Component)this).show();
  687.          this.m_smpContents = new SiteMapParser(var3);
  688.          this.contents_thread = this.m_smpContents.parseInSeparateThread(var1, ((Applet)this).getDocumentBase(), this);
  689.          var3.getTree().requestFocus();
  690.       }
  691.    }
  692.  
  693.    public void resize(int var1, int var2) {
  694.       System.out.println("!!!Applet Resize!!!");
  695.  
  696.       try {
  697.          super.resize(var1, var2);
  698.       } catch (Exception var4) {
  699.          ((Throwable)var4).printStackTrace();
  700.       }
  701.    }
  702.  
  703.    public synchronized boolean checkSize() {
  704.       if (((Component)this).bounds().width == 0 && ((Component)this).bounds().height == 0) {
  705.          String var1 = ((Applet)this).getDocumentBase().toString();
  706.          int var2 = var1.lastIndexOf(".");
  707.          String var3 = var1.substring(var2, var1.length());
  708.          var1 = var1.substring(0, var2);
  709.          var1 = var1 + "f" + var3;
  710.  
  711.          try {
  712.             URL var4 = new URL(var1);
  713.             ((Applet)this).getAppletContext().showDocument(var4, "_self");
  714.             return false;
  715.          } catch (Exception var5) {
  716.             ((Throwable)var5).printStackTrace();
  717.          }
  718.       }
  719.  
  720.       return true;
  721.    }
  722.  
  723.    private void DoSearch(String var1) {
  724.       boolean var2 = false;
  725.       boolean var3 = false;
  726.       if (this.m_tbtnIndex != null) {
  727.          this.m_tbtnIndex.disactive();
  728.          this.m_tbtnIndex.SetDrawLeft(true);
  729.          if (!var3) {
  730.             var3 = true;
  731.             this.m_tbtnIndex.SetDrawRight(false);
  732.          } else {
  733.             this.m_tbtnIndex.SetDrawRight(true);
  734.          }
  735.  
  736.          this.m_tbtnIndex.repaint(0L);
  737.       }
  738.  
  739.       if (this.m_tbtnToc != null) {
  740.          this.m_tbtnToc.disactive();
  741.          this.m_tbtnToc.SetDrawLeft(true);
  742.          if (!var3) {
  743.             var3 = true;
  744.             this.m_tbtnToc.SetDrawRight(false);
  745.          } else {
  746.             this.m_tbtnToc.SetDrawRight(true);
  747.          }
  748.  
  749.          this.m_tbtnToc.repaint(0L);
  750.       }
  751.  
  752.       if (this.m_tbtnSearch != null) {
  753.          this.m_tbtnSearch.active();
  754.          this.m_tbtnSearch.repaint(0L);
  755.       }
  756.  
  757.       if (this.m_tbtnHelp != null) {
  758.          this.m_tbtnHelp.disactive();
  759.          this.m_tbtnHelp.SetDrawRight(true);
  760.          if (!var2) {
  761.             var2 = true;
  762.             this.m_tbtnHelp.SetDrawLeft(false);
  763.          } else {
  764.             this.m_tbtnHelp.SetDrawLeft(true);
  765.          }
  766.  
  767.          this.m_tbtnHelp.repaint(0L);
  768.       }
  769.  
  770.       if (var1 == null) {
  771.          ((Container)this).setLayout(new BorderLayout());
  772.       }
  773.  
  774.       if (this.m_pnlNav == null) {
  775.          this.m_clLayout = new CardLayout();
  776.          this.m_pnlNav = new Panel();
  777.          this.m_pnlNav.setLayout(this.m_clLayout);
  778.          ((Container)this).add("Center", this.m_pnlNav);
  779.       }
  780.  
  781.       if (var1 == null) {
  782.          var1 = ((Applet)this).getParameter("Item1");
  783.       }
  784.  
  785.       if (this.m_bSearchLoaded && this.m_strSearchFile != null && this.m_strSearchFile.equals(var1)) {
  786.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Search"));
  787.          if (this.m_spSearch != null) {
  788.             this.m_spSearch.getEditBox().requestFocus();
  789.          }
  790.  
  791.       } else {
  792.          this.m_strSearchFile = var1;
  793.          this.m_bSearchLoaded = true;
  794.          this.m_bMustHaveSize = true;
  795.          this.m_ftsParser = new FTSParser(this);
  796.          this.m_spSearch = this.m_ftsParser.getFTS();
  797.          this.m_ftsSearcher = this.m_ftsParser.getSearcher();
  798.          if (this.m_spSearch != null && this.m_spSearch.getList() != null) {
  799.             this.m_spSearch.getList().clear();
  800.             this.m_spSearch.getList().addItem(ResourceLib.GetRes("LoadingFTS"));
  801.          }
  802.  
  803.          this.m_pnlNav.add(ResourceLib.GetRes("Search"), this.m_spSearch);
  804.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Search"));
  805.          ((Component)this).repaint();
  806.          this.RepaintTabs();
  807.          ((Applet)this).showStatus(ResourceLib.GetRes("LoadingFTS"));
  808.          ((Component)this).show();
  809.          this.search_thread = this.m_ftsParser.parseInSeparateThread(var1, ((Applet)this).getDocumentBase());
  810.       }
  811.    }
  812.  
  813.    private void DoSplash() {
  814.       ((Applet)this).showStatus("Loading Splash Image...");
  815.  
  816.       try {
  817.          Image var1 = null;
  818.          Object var2 = null;
  819.  
  820.          try {
  821.             var1 = ((Applet)this).getImage(URLFileHandler.makeURL(((Applet)this).getDocumentBase(), ((Applet)this).getParameter("Item1"), (String)null));
  822.          } catch (Exception var6) {
  823.             ((Throwable)var6).printStackTrace();
  824.          }
  825.  
  826.          int var3 = 2500;
  827.  
  828.          try {
  829.             var3 = new Integer(((Applet)this).getParameter("Item2"));
  830.          } catch (NumberFormatException var5) {
  831.             ((Throwable)var5).printStackTrace();
  832.          }
  833.  
  834.          SplashScreen var4 = new SplashScreen(this, var1, var3, (String)var2);
  835.          var4.show();
  836.       } catch (Exception var7) {
  837.          ((Throwable)var7).printStackTrace();
  838.          ((Container)this).add("Center", new Label(ResourceLib.GetRes("CantOpenURLorFile") + ((Throwable)var7).getMessage()));
  839.       }
  840.    }
  841.  
  842.    public void myrun() {
  843.       try {
  844.          System.gc();
  845.          Runtime.getRuntime().gc();
  846.          this.m_lnTimeCreated = System.currentTimeMillis();
  847.          if (System.getProperty("java.vendor").startsWith("Microsoft") && System.getProperty("java.version").startsWith("1.0")) {
  848.             this.m_bIsIE3 = true;
  849.          }
  850.  
  851.          ResourceLib.InitRes();
  852.          String var1 = ((Applet)this).getParameter("ResourceFile");
  853.          if (var1 != null) {
  854.             try {
  855.                MyBufferedInputStream var2 = new MyBufferedInputStream(URLFileHandler.makeURL(((Applet)this).getDocumentBase(), var1, (String)null).openStream());
  856.                ResourceLib.LoadResource(var2);
  857.                var2.close();
  858.             } catch (IOException var4) {
  859.             }
  860.          }
  861.  
  862.          String var6 = ((Applet)this).getParameter("Command");
  863.          if (var6 == null) {
  864.             return;
  865.          }
  866.  
  867.          if (var6.equalsIgnoreCase("Contents")) {
  868.             this.DoContents((String)null);
  869.          } else if (var6.equalsIgnoreCase("Index")) {
  870.             this.DoIndex((String)null);
  871.          } else if (var6.equalsIgnoreCase("Search")) {
  872.             this.DoSearch((String)null);
  873.          } else if (var6.equalsIgnoreCase("Splash")) {
  874.             this.DoSplash();
  875.          } else if (var6.equalsIgnoreCase("Help")) {
  876.             this.DoHelp((String)null);
  877.          } else if (var6.equalsIgnoreCase("Related Topics")) {
  878.             this.DoRelatedTopics(false);
  879.          } else if (var6.equalsIgnoreCase("Related Topics,MENU")) {
  880.             this.DoRelatedTopics(true);
  881.          } else if (var6.equalsIgnoreCase("HH Version")) {
  882.             this.DoHHVersion(false);
  883.          } else if (var6.equalsIgnoreCase("AboutBox")) {
  884.             this.DoAboutBox();
  885.          } else if (var6.equalsIgnoreCase("NavPane")) {
  886.             this.DoNavPane();
  887.          } else {
  888.             this.DoBadCommand(var6);
  889.          }
  890.  
  891.          this.m_strCurrentCommand = var6;
  892.          ((Component)this).show();
  893.          String var3 = ((Applet)this).getParameter("SyncContentTopic");
  894.          if (var3 != null) {
  895.             this.DoSync(var3);
  896.             return;
  897.          }
  898.       } catch (Exception var5) {
  899.          ((Throwable)var5).printStackTrace();
  900.       }
  901.  
  902.    }
  903.  
  904.    private void DoAboutBox() {
  905.       String var1 = ((Applet)this).getParameter("Button");
  906.       String var2 = ((Applet)this).getParameter("Text");
  907.       if (var1 != null || var2 != null) {
  908.          String var3 = var1 != null ? var1 : var2;
  909.          String var4 = ((Applet)this).getParameter("Item1");
  910.          Vector var5 = new Vector();
  911.  
  912.          String var7;
  913.          for(int var6 = 0; (var7 = ((Applet)this).getParameter("Item" + (var6 + 2))) != null; ++var6) {
  914.             var5.addElement(var7);
  915.          }
  916.  
  917.          AboutDialogBox var8 = new AboutDialogBox(var4, var5);
  918.          Object var9 = var1 != null ? new ButtonLauncher(var3, var8) : new LabelLauncher(var3, var8);
  919.          ((Container)this).setLayout(new BorderLayout());
  920.          ((Container)this).add("Center", (Component)var9);
  921.          this.m_winFrameToShow = var8;
  922.       }
  923.    }
  924.  
  925.    private void RepaintTabs() {
  926.       if (this.m_bShowTab) {
  927.          if (this.m_pnlNav != null) {
  928.             this.m_pnlNav.paintAll(this.m_pnlNav.getGraphics());
  929.          }
  930.  
  931.          if (this.m_tbtnToc != null) {
  932.             this.m_tbtnToc.paint(this.m_tbtnToc.getGraphics());
  933.          }
  934.  
  935.          if (this.m_tbtnIndex != null) {
  936.             this.m_tbtnIndex.paint(this.m_tbtnIndex.getGraphics());
  937.          }
  938.  
  939.          if (this.m_tbtnSearch != null) {
  940.             this.m_tbtnSearch.paint(this.m_tbtnSearch.getGraphics());
  941.          }
  942.  
  943.          if (this.m_tbtnHelp != null) {
  944.             this.m_tbtnHelp.paint(this.m_tbtnHelp.getGraphics());
  945.          }
  946.       }
  947.  
  948.    }
  949.  
  950.    private void DoIndex(String var1) {
  951.       boolean var2 = false;
  952.       boolean var3 = false;
  953.       if (this.m_tbtnToc != null) {
  954.          this.m_tbtnToc.disactive();
  955.          this.m_tbtnToc.SetDrawLeft(true);
  956.          if (!var3) {
  957.             var3 = true;
  958.             this.m_tbtnToc.SetDrawRight(false);
  959.          } else {
  960.             this.m_tbtnToc.SetDrawRight(true);
  961.          }
  962.  
  963.          this.m_tbtnToc.repaint(0L);
  964.       }
  965.  
  966.       if (this.m_tbtnIndex != null) {
  967.          this.m_tbtnIndex.active();
  968.          this.m_tbtnIndex.repaint(0L);
  969.       }
  970.  
  971.       if (this.m_tbtnSearch != null) {
  972.          this.m_tbtnSearch.disactive();
  973.          this.m_tbtnSearch.SetDrawRight(true);
  974.          if (!var2) {
  975.             var2 = true;
  976.             this.m_tbtnSearch.SetDrawLeft(false);
  977.          } else {
  978.             this.m_tbtnSearch.SetDrawLeft(true);
  979.          }
  980.  
  981.          this.m_tbtnSearch.repaint(0L);
  982.       }
  983.  
  984.       if (this.m_tbtnHelp != null) {
  985.          this.m_tbtnHelp.disactive();
  986.          this.m_tbtnHelp.SetDrawRight(true);
  987.          if (!var2) {
  988.             var2 = true;
  989.             this.m_tbtnHelp.SetDrawLeft(false);
  990.          } else {
  991.             this.m_tbtnHelp.SetDrawLeft(true);
  992.          }
  993.  
  994.          this.m_tbtnHelp.repaint(0L);
  995.       }
  996.  
  997.       if (var1 == null) {
  998.          ((Container)this).setLayout(new BorderLayout());
  999.       }
  1000.  
  1001.       if (this.m_pnlNav == null) {
  1002.          this.m_clLayout = new CardLayout();
  1003.          this.m_pnlNav = new Panel();
  1004.          this.m_pnlNav.setLayout(this.m_clLayout);
  1005.          ((Container)this).add("Center", this.m_pnlNav);
  1006.       }
  1007.  
  1008.       if (var1 == null) {
  1009.          var1 = ((Applet)this).getParameter("Item1");
  1010.       }
  1011.  
  1012.       if (this.m_bIndexLoaded && this.m_strIndexFile != null && this.m_strIndexFile.equals(var1)) {
  1013.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Index"));
  1014.          if (this.m_ipIndex != null) {
  1015.             this.m_ipIndex.getEditBox().requestFocus();
  1016.          }
  1017.  
  1018.       } else {
  1019.          this.m_strIndexFile = var1;
  1020.          this.m_bIndexLoaded = true;
  1021.          this.m_bMustHaveSize = true;
  1022.          SiteMapParserToIndex var4 = new SiteMapParserToIndex(this);
  1023.          if (this.m_ipIndex != null && this.m_ipIndex.getList() != null) {
  1024.             this.m_ipIndex.getList().clear();
  1025.          }
  1026.  
  1027.          this.m_ipIndex = var4.getIndex();
  1028.          this.m_pnlNav.add(ResourceLib.GetRes("Index"), this.m_ipIndex);
  1029.          this.m_clLayout.show(this.m_pnlNav, ResourceLib.GetRes("Index"));
  1030.          this.m_pnlNav.paintAll(this.m_pnlNav.getGraphics());
  1031.          this.RepaintTabs();
  1032.          ((Applet)this).showStatus(ResourceLib.GetRes("LoadingIndex") + "...");
  1033.          if (this.m_smpIndex != null) {
  1034.             this.m_smpIndex.closeFiles();
  1035.          }
  1036.  
  1037.          if (this.m_ipIndex != null) {
  1038.             this.m_ipIndex.getEditBox().requestFocus();
  1039.          }
  1040.  
  1041.          ((Component)this).show();
  1042.          this.m_smpIndex = new SiteMapParser(var4);
  1043.          this.parser_thread = this.m_smpIndex.parseInSeparateThread(var1, ((Applet)this).getDocumentBase(), this);
  1044.       }
  1045.    }
  1046.  
  1047.    public boolean GoNext(Object var1) {
  1048.       if (this.m_pnlTabs == null) {
  1049.          return false;
  1050.       } else {
  1051.          for(int var2 = 0; var2 < this.m_pnlTabs.getComponentCount(); ++var2) {
  1052.             if (this.m_pnlTabs.getComponent(var2) == var1) {
  1053.                if (var2 != this.m_pnlTabs.getComponentCount() - 1) {
  1054.                   this.notifyButtonPushEvent(new ButtonPushEvent(this.m_pnlTabs.getComponent(var2 + 1), 0, 0));
  1055.                   return true;
  1056.                }
  1057.  
  1058.                return false;
  1059.             }
  1060.          }
  1061.  
  1062.          return false;
  1063.       }
  1064.    }
  1065.  
  1066.    public void Click() {
  1067.       if (this.m_winFrameToShow != null) {
  1068.          if (this.m_bIsIE3) {
  1069.             MethodRunner var1 = new MethodRunner(this.m_winFrameToShow, "ClickThread");
  1070.             ((Thread)var1).start();
  1071.             return;
  1072.          }
  1073.  
  1074.          this.m_winFrameToShow.show();
  1075.       }
  1076.  
  1077.    }
  1078.  
  1079.    private void ShowVersion() {
  1080.       this.DoHHVersion(true);
  1081.    }
  1082.  
  1083.    private void DoSync(String var1) {
  1084.       if (this.m_strContentsFile != null) {
  1085.          this.DoContents(this.m_strContentsFile);
  1086.  
  1087.          while(this.m_smpContents == null) {
  1088.             try {
  1089.                System.out.println("Wait for try DoSYnc!");
  1090.                Thread.sleep(100L);
  1091.             } catch (InterruptedException var3) {
  1092.                ((Throwable)var3).printStackTrace();
  1093.             }
  1094.          }
  1095.  
  1096.          if (this.sync_thread != null && this.sync_thread.isAlive()) {
  1097.             this.sync_thread.stop();
  1098.          }
  1099.  
  1100.          this.sync_thread = new DoSync(this.m_smpContents, var1, "SyncThread");
  1101.          this.sync_thread.start();
  1102.       }
  1103.    }
  1104.  
  1105.    public void init() {
  1106.       System.out.println("!!!Applet Init!!!");
  1107.       if (System.getProperty("java.vendor").indexOf("Netscape") != -1) {
  1108.          this.myrun();
  1109.       }
  1110.  
  1111.    }
  1112.  
  1113.    public boolean GoPrev(Object var1) {
  1114.       if (this.m_pnlTabs == null) {
  1115.          return false;
  1116.       } else {
  1117.          for(int var2 = 0; var2 < this.m_pnlTabs.getComponentCount(); ++var2) {
  1118.             if (this.m_pnlTabs.getComponent(var2) == var1) {
  1119.                if (var2 != 0) {
  1120.                   this.notifyButtonPushEvent(new ButtonPushEvent(this.m_pnlTabs.getComponent(var2 - 1), 0, 0));
  1121.                   return true;
  1122.                }
  1123.  
  1124.                return false;
  1125.             }
  1126.          }
  1127.  
  1128.          return false;
  1129.       }
  1130.    }
  1131.  
  1132.    public synchronized void resizeForNS(int var1, int var2) {
  1133.       try {
  1134.          if (System.getProperty("java.vendor").indexOf("Netscape") != -1) {
  1135.             ((Component)this).getParent().reshape(0, 0, var1, var2);
  1136.          }
  1137.  
  1138.          super.reshape(0, 0, var1, var2);
  1139.          ((Container)this).validate();
  1140.       } catch (Exception var4) {
  1141.          ((Throwable)var4).printStackTrace();
  1142.       }
  1143.    }
  1144.  
  1145.    private void DoRelatedTopics(boolean var1) {
  1146.       ((Applet)this).showStatus("Loading Related Topics Button...");
  1147.       String var2 = ((Applet)this).getParameter("Button");
  1148.       String var3 = ((Applet)this).getParameter("Text");
  1149.       String var4 = ((Applet)this).getParameter("Frame");
  1150.       if (var1 && System.getProperty("os.name").startsWith("SunOS")) {
  1151.          var1 = false;
  1152.       }
  1153.  
  1154.       boolean var5 = var2 == null && var3 == null;
  1155.       String var6 = "";
  1156.       if (!var5) {
  1157.          var6 = var2 != null ? var2 : var3;
  1158.       }
  1159.  
  1160.       Vector var7 = new Vector();
  1161.       int var8 = 0;
  1162.  
  1163.       String var9;
  1164.       while((var9 = ((Applet)this).getParameter("Item" + (var8 + 1))) != null) {
  1165.          IndexSecondaryEntry var10 = new IndexSecondaryEntry();
  1166.          int var11 = var9.indexOf(59);
  1167.          if (var11 != -1 && var11 != var9.length() - 1) {
  1168.             int var12 = var9.indexOf(59, var11 + 1);
  1169.             String var13 = var9.substring(0, var11);
  1170.             String var14 = var12 == -1 ? var9.substring(var11 + 1) : var9.substring(var11 + 1, var12);
  1171.             String var15 = var12 == -1 ? null : var9.substring(var11 + 1);
  1172.             var10.name = var13;
  1173.             var10.local = var14;
  1174.             var10.url = var15;
  1175.             var10.frame = var4;
  1176.             var7.addElement(var10);
  1177.             ++var8;
  1178.          }
  1179.       }
  1180.  
  1181.       if (var8 != 0) {
  1182.          if (var1) {
  1183.             PopupMenu var17 = new PopupMenu(this, var7);
  1184.             this.m_winFrameToShow = var17;
  1185.          } else {
  1186.             IndexSecondaryDialog var18 = new IndexSecondaryDialog(this, var7, (DialogDoneTarget)null);
  1187.             this.m_winFrameToShow = var18;
  1188.          }
  1189.  
  1190.          if (!var5) {
  1191.             Object var16;
  1192.             if (var2 != null) {
  1193.                var16 = new ButtonLauncher(var6, this.m_winFrameToShow);
  1194.             } else {
  1195.                var16 = new LabelLauncher(var6, this.m_winFrameToShow);
  1196.             }
  1197.  
  1198.             ((Container)this).setLayout(new BorderLayout());
  1199.             ((Container)this).add("Center", (Component)var16);
  1200.          }
  1201.  
  1202.       }
  1203.    }
  1204. }
  1205.