home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2003 July / PCpro_2003_07.ISO / vollvers / edhtml / EdHTMLv5.0.exe / Main / RelatedDialog.class (.txt) < prev    next >
Encoding:
Java Class File  |  2003-05-14  |  4.3 KB  |  183 lines

  1. import java.awt.BorderLayout;
  2. import java.awt.Button;
  3. import java.awt.Canvas;
  4. import java.awt.Color;
  5. import java.awt.Component;
  6. import java.awt.Container;
  7. import java.awt.Dialog;
  8. import java.awt.Dimension;
  9. import java.awt.Event;
  10. import java.awt.Frame;
  11. import java.awt.GridLayout;
  12. import java.awt.Label;
  13. import java.awt.List;
  14. import java.awt.Panel;
  15. import java.awt.Toolkit;
  16. import java.awt.Window;
  17. import java.util.Vector;
  18.  
  19. class RelatedDialog extends Dialog implements Runnable {
  20.    DialogLayout m_Layout;
  21.    boolean m_fInitialized;
  22.    HHCtrl m_applet;
  23.    String m_targetFrame;
  24.    Vector m_itemList;
  25.    private Thread m_callingThread;
  26.    Frame m_parent;
  27.    public static final int ACTION_PENDING = 0;
  28.    public static final int ACTION_DISPLAY = 1;
  29.    public static final int ACTION_CANCEL = 2;
  30.    int status;
  31.    Button btnDisplay;
  32.    Button btnCancel;
  33.    Label IDC_STATIC1;
  34.    List lstItems;
  35.  
  36.    boolean isInitialized() {
  37.       return this.m_fInitialized;
  38.    }
  39.  
  40.    boolean CreateControls() {
  41.       int var1 = 0;
  42.       int var2 = 0;
  43.       if (this.m_fInitialized) {
  44.          return false;
  45.       } else {
  46.          try {
  47.             var1 = Integer.valueOf(this.m_applet.getString("rel.dlgwidth"));
  48.             var2 = Integer.valueOf(this.m_applet.getString("rel.dlgheight"));
  49.          } catch (Exception var6) {
  50.             if (var1 == 0) {
  51.                var1 = 294;
  52.             }
  53.  
  54.             if (var2 == 0) {
  55.                var2 = 238;
  56.             }
  57.          }
  58.  
  59.          ((Component)this).resize(var1, var2);
  60.          ((Container)this).setLayout(new BorderLayout(10, 7));
  61.          Panel var3 = new Panel();
  62.          ((Container)var3).setLayout(new BorderLayout(4, 5));
  63.          ((Container)var3).add("North", new Label(this.m_applet.getString("rel.label"), 0));
  64.          this.lstItems = new List(1, false);
  65.          ((Container)var3).add("Center", this.lstItems);
  66.          this.lstItems.setBackground(Color.white);
  67.          Panel var4 = new Panel();
  68.          ((Container)var4).setLayout(new BorderLayout(0, 5));
  69.          Panel var5 = new Panel();
  70.          ((Container)var5).setLayout(new GridLayout(1, 2, 8, 4));
  71.          this.btnDisplay = new Button("  " + this.m_applet.getString("rel.display") + "  ");
  72.          ((Container)var5).add(this.btnDisplay);
  73.          this.btnCancel = new Button("  " + this.m_applet.getString("rel.cancel") + "  ");
  74.          ((Container)var5).add(this.btnCancel);
  75.          ((Container)var4).add("East", var5);
  76.          ((Container)var4).add("South", new Canvas());
  77.          ((Container)var3).add("South", var4);
  78.          ((Container)this).add("North", new Canvas());
  79.          ((Container)this).add("South", new Canvas());
  80.          ((Container)this).add("Center", var3);
  81.          ((Container)this).add("West", new Canvas());
  82.          ((Container)this).add("East", new Canvas());
  83.          this.m_fInitialized = true;
  84.          return true;
  85.       }
  86.    }
  87.  
  88.    public void setCallingThread(Thread var1) {
  89.       this.m_callingThread = var1;
  90.    }
  91.  
  92.    RelatedDialog(String var1, String var2, HHCtrl var3, Frame var4) {
  93.       super(var4, var1, true);
  94.       this.m_parent = var4;
  95.       this.m_applet = var3;
  96.       this.m_targetFrame = var2;
  97.       ((Dialog)this).setResizable(false);
  98.       ((Component)this).setBackground(Color.lightGray);
  99.       ((Dialog)this).setTitle(var1);
  100.    }
  101.  
  102.    void setItems(Vector var1) {
  103.       if (this.lstItems.countItems() > 0) {
  104.          this.lstItems.clear();
  105.       }
  106.  
  107.       for(int var3 = 0; var3 < var1.size(); ++var3) {
  108.          String var2 = (String)var1.elementAt(var3);
  109.          if (var2.indexOf(";") > 0) {
  110.             this.lstItems.addItem(var2.substring(0, var2.indexOf(";")));
  111.          }
  112.       }
  113.  
  114.       if (var1.size() > 0) {
  115.          this.lstItems.select(0);
  116.       }
  117.  
  118.       this.m_itemList = var1;
  119.    }
  120.  
  121.    public int getStatus() {
  122.       return this.status;
  123.    }
  124.  
  125.    public void show() {
  126.       this.status = 0;
  127.       String var1 = System.getProperty("java.vendor");
  128.       Toolkit var2 = ((Window)this).getToolkit();
  129.       Dimension var3 = var2.getScreenSize();
  130.       if (var1.indexOf("Microsoft") != -1) {
  131.          Dimension var4 = ((Component)this).size();
  132.          ((Component)this).move(var3.width / 2 - var4.width / 2, var3.height / 2 - var4.height / 2);
  133.          super.show();
  134.          ((Component)this).move(var3.width / 2 - var4.width / 2, var3.height / 2 - var4.height / 2);
  135.          ((Component)this).resize(var4);
  136.       } else {
  137.          ((Component)this).move(var3.width / 2 - ((Component)this).size().width / 2, var3.height / 2 - ((Component)this).size().height / 2);
  138.          super.show();
  139.          ((Component)this).move(var3.width / 2 - ((Component)this).size().width / 2, var3.height / 2 - ((Component)this).size().height / 2);
  140.       }
  141.  
  142.       this.lstItems.requestFocus();
  143.    }
  144.  
  145.    public void run() {
  146.       this.m_applet.showRelated();
  147.    }
  148.  
  149.    public boolean handleEvent(Event var1) {
  150.       if ((var1.target != this.btnDisplay || var1.id != 1001) && (var1.target != this.lstItems || var1.id != 1001)) {
  151.          if ((var1.target != this.btnCancel || var1.id != 1001) && (var1.id != 402 || var1.key != 27)) {
  152.             if (var1.id == 201) {
  153.                this.status = 2;
  154.                ((Component)this).hide();
  155.                this.m_parent.requestFocus();
  156.                this.m_callingThread.resume();
  157.                return true;
  158.             } else if (var1.target == this.lstItems && var1.id == 402 && var1.key == 10) {
  159.                this.status = 1;
  160.                ((Component)this).hide();
  161.                this.m_parent.requestFocus();
  162.                this.m_callingThread.resume();
  163.                return true;
  164.             } else {
  165.                return super.handleEvent(var1);
  166.             }
  167.          } else {
  168.             this.status = 2;
  169.             ((Component)this).hide();
  170.             this.m_parent.requestFocus();
  171.             this.m_callingThread.resume();
  172.             return true;
  173.          }
  174.       } else {
  175.          this.status = 1;
  176.          ((Component)this).hide();
  177.          this.m_parent.requestFocus();
  178.          this.m_callingThread.resume();
  179.          return true;
  180.       }
  181.    }
  182. }
  183.