home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2004 May / DPPCPRO0504.ISO / May / Seatools / SeaTools.iso / tools / en / webhelp / webhelp.cab / hhapplet / GlossaryView.class (.txt) < prev    next >
Encoding:
Java Class File  |  2002-04-17  |  3.9 KB  |  155 lines

  1. package hhapplet;
  2.  
  3. import XMLConsumer.Consumer;
  4. import XMLConsumer.Glossary;
  5. import XMLConsumer.GlossaryEntry;
  6. import XMLConsumer.Project;
  7. import java.awt.BorderLayout;
  8. import java.awt.Color;
  9. import java.awt.Component;
  10. import java.awt.Container;
  11. import java.awt.Dimension;
  12. import java.awt.Font;
  13. import java.awt.FontMetrics;
  14. import java.awt.Image;
  15. import java.util.Enumeration;
  16. import java.util.Vector;
  17.  
  18. public class GlossaryView extends BsscImagePanel implements IActionSink {
  19.    private Vector m_vProjects;
  20.    private Vector m_vGlossary;
  21.    private BsscTextArea m_edtDefinition;
  22.    private GloListView m_list;
  23.    private BsscImageLabel m_lblDefinition;
  24.    private String m_sDefaultDefinitionText;
  25.  
  26.    public GlossaryView(Vector var1, GloViewSkin var2) {
  27.       this.m_vProjects = var1;
  28.       BsscImagePanel var3 = new BsscImagePanel();
  29.       BsscImageLabel var4 = new BsscImageLabel(ResourceLib.GetRes("Term"));
  30.       this.m_vGlossary = new Vector();
  31.       this.loadGlossaryInfo();
  32.       this.m_list = new GloListView(this.m_vGlossary);
  33.       this.m_list.setBackground(Color.white);
  34.       this.m_list.addActionSink(this);
  35.       this.m_edtDefinition = new BsscTextArea();
  36.       this.m_edtDefinition.setEditable(false);
  37.       Color var5 = ((ViewSkin)var2).getBgColor();
  38.       if (var5 != null) {
  39.          this.m_list.setBackground(var5);
  40.       } else {
  41.          this.m_list.setBackground(Color.white);
  42.       }
  43.  
  44.       Image var6 = ((ViewSkin)var2).getBgImage();
  45.       if (var6 != null) {
  46.          this.m_list.setBgImage(var6);
  47.       }
  48.  
  49.       BsscFont var7 = ((ViewSkin)var2).getNormalFont();
  50.       if (var7 != null) {
  51.          Font var8 = var7.getFont();
  52.          FontMetrics var9 = ((Component)this).getFontMetrics(var8);
  53.          var9.getHeight();
  54.          this.m_list.setUnitHeight(var9.getHeight());
  55.          Font var10 = var7.getFont();
  56.          if (var10 != null) {
  57.             GlossaryEntry.setNormalFont(var10);
  58.             this.m_edtDefinition.setFont(var10);
  59.          }
  60.  
  61.          Color var11 = var7.getColor();
  62.          if (var11 != null) {
  63.             GlossaryEntry.setNormalColor(var11);
  64.             this.m_edtDefinition.setForeground(var11);
  65.          }
  66.  
  67.          GlossaryEntry.setNormalUnderline(var7.isUnderline());
  68.       }
  69.  
  70.       GlossaryEntry.setActiveColor(((ViewSkin)var2).getActiveColor());
  71.       BsscFont var12 = ((ViewSkin)var2).getHoverFont();
  72.       if (var12 != null) {
  73.          Font var13 = var12.getFont();
  74.          if (var13 != null) {
  75.             GlossaryEntry.setHoverFont(var13);
  76.          }
  77.  
  78.          Color var15 = var12.getColor();
  79.          if (var15 != null) {
  80.             GlossaryEntry.setHoverColor(var15);
  81.          }
  82.  
  83.          GlossaryEntry.setHoverUnderline(var12.isUnderline());
  84.       }
  85.  
  86.       ((Container)var3).setLayout(new BorderLayout(2, 2));
  87.       ((Container)var3).add("North", var4);
  88.       ((Container)var3).add("Center", this.m_list);
  89.       1 var14 = new 1(this);
  90.       this.m_sDefaultDefinitionText = ResourceLib.GetRes("Definition") + " ";
  91.       this.m_lblDefinition = new BsscImageLabel(this.m_sDefaultDefinitionText);
  92.       ((Container)var14).setLayout(new BorderLayout(2, 2));
  93.       ((Container)var14).add("North", this.m_lblDefinition);
  94.       if (var5 != null) {
  95.          this.m_edtDefinition.setBackground(var5);
  96.       } else {
  97.          this.m_edtDefinition.setBackground(Color.white);
  98.       }
  99.  
  100.       ((Container)var14).add("Center", this.m_edtDefinition);
  101.       ((Container)this).setLayout(new BorderLayout());
  102.       ((Container)this).add("Center", var3);
  103.       ((Container)this).add("South", var14);
  104.    }
  105.  
  106.    public void accept(Vector var1) {
  107.       if (var1 != null && var1.size() == 2) {
  108.          Object var2 = var1.elementAt(0);
  109.          Object var3 = var1.elementAt(1);
  110.          if (var2 instanceof String && var3 instanceof String) {
  111.             String var4 = (String)var2;
  112.             String var5 = (String)var3;
  113.             this.m_lblDefinition.setText(this.m_sDefaultDefinitionText + var4);
  114.             this.m_edtDefinition.setText(var5);
  115.          }
  116.       }
  117.  
  118.    }
  119.  
  120.    public void loadGlossaryInfo() {
  121.       try {
  122.          if (this.m_vProjects != null) {
  123.             String var1 = null;
  124.             Enumeration var2 = this.m_vProjects.elements();
  125.  
  126.             while(var2.hasMoreElements()) {
  127.                Object var3 = var2.nextElement();
  128.                if (var3 instanceof Project) {
  129.                   if (var1 == null) {
  130.                      var1 = ((Project)var3).getLangId();
  131.                   } else if (!var1.equals(((Project)var3).getLangId())) {
  132.                      continue;
  133.                   }
  134.  
  135.                   Glossary var4 = ((Project)var3).getGlossary();
  136.                   if (var4 != null) {
  137.                      ((Consumer)var4).process();
  138.                      this.m_vGlossary.addElement(var4);
  139.                   }
  140.                }
  141.             }
  142.  
  143.             return;
  144.          }
  145.       } catch (Exception var5) {
  146.          ((Throwable)var5).printStackTrace();
  147.       }
  148.  
  149.    }
  150.  
  151.    public Dimension getPreferredSize() {
  152.       return ((Component)this).getParent().getSize();
  153.    }
  154. }
  155.