home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 25 / IOPROG_25.ISO / SOFT / JavaS / javastar-eval.exe / data1.cab / Program_Files / examples / namedb / namePop.java < prev    next >
Encoding:
Java Source  |  1999-02-11  |  3.9 KB  |  137 lines

  1. /* ****************************************************************
  2. ** @(#)namePop.java    1.2 0
  3. **
  4. ** Copyright 1997 Sun Microsystems, Inc. All Rights Reserved
  5. **
  6. ** ****************************************************************
  7. */
  8.  
  9. import java.awt.*;
  10. import java.awt.event.*;
  11. import gjt.*;
  12.  
  13. public class namePop extends Frame implements ActionListener {        
  14.  
  15.   public List nameList;
  16.   public OpenlookButton viewBtn;
  17.   public OpenlookButton exitBtn;
  18.   private namedb parent;
  19.  
  20.   public void init() {
  21.     setTitle(parent.strings.namePop());
  22.     if (parent.UseSetName)
  23.       setName("namePop");
  24.     setBackground(Color.lightGray);
  25.     
  26.     Panel mpanel=new Panel();
  27.     add(mpanel);
  28.  
  29.     GridBagLayout grid = new GridBagLayout();
  30.     if (parent.UseSetName)
  31.       this.setName("namePop");
  32.  
  33.     Label label=new Label(parent.strings.namePopl());
  34.     if (parent.UseSetName)
  35.       label.setName("namePop_nameLabel");
  36.     label.setFont(new Font("Serif",Font.ITALIC,16));
  37.     mpanel.add(label);
  38.  
  39.     nameList = new List(5);
  40.     if (parent.UseSetName)
  41.       nameList.setName("name_list");
  42.     nameList.setBackground(Color.lightGray);
  43.     nameList.setFont(new Font("Serif",Font.ITALIC,16));
  44.     nameList.addActionListener(this);
  45.     mpanel.add(nameList);
  46.  
  47.     Panel bpanel=new Panel();
  48.     bpanel.setLayout(new GridLayout(1,2));
  49.     Box box1=new Box(bpanel,"");
  50.     mpanel.add(box1);
  51.     
  52.     viewBtn = new OpenlookButton();
  53.     viewBtn.setLabel(parent.strings.namePopViewb());
  54.     if (parent.UseSetName)
  55.       viewBtn.setName("nameview_button");
  56.     viewBtn.setFont(new Font("Serif",Font.ITALIC,16));
  57.     viewBtn.addActionListener(this);
  58.     bpanel.add(viewBtn,new Point(0,0));
  59.     
  60.     exitBtn = new OpenlookButton();
  61.     exitBtn.setLabel(parent.strings.namePopCloseb());
  62.     if (parent.UseSetName)
  63.       exitBtn.setName("nameclose_button");
  64.     exitBtn.setFont(new Font("Serif",Font.ITALIC,16));
  65.     exitBtn.addActionListener(this);
  66.     bpanel.add(exitBtn,new Point(0,1));
  67.  
  68.     constrain(grid,label,0,0,1,1,GridBagConstraints.WEST,GridBagConstraints.NONE,0,0,0,0,0,0,0,0);
  69.     constrain(grid,nameList,0,1,4,3,GridBagConstraints.WEST,GridBagConstraints.NONE,0,0,0,0,0,0,0,0);
  70.     constrain(grid,box1,0,5,1,1,GridBagConstraints.CENTER,GridBagConstraints.HORIZONTAL,0,0,0,0,0,0,0,0);
  71.     
  72.     mpanel.setLayout(grid);
  73.     
  74.     GridBagLayout maingrid=new GridBagLayout();
  75.     constrain(maingrid,mpanel,0,0,1,1,GridBagConstraints.CENTER,GridBagConstraints.NONE,0,0,20,30,20,30,0,0);
  76.     setLayout(maingrid);
  77.   }
  78.  
  79.   public void actionPerformed(ActionEvent event) {
  80.     Component comp=(Component)event.getSource();
  81.     if (comp==exitBtn) {
  82.       popCancel();
  83.     }
  84.     if (comp==viewBtn) {
  85.     popOk();
  86.     }
  87.   }
  88.  
  89.   public void constrain(GridBagLayout grid,Component comp,int gridx,int gridy,int gridwidth,int gridheight,int anchor,int fill,int ipadx,int ipady,int top,int left,int bottom,int right,double weightx,double weighty) {
  90.     GridBagConstraints con=new GridBagConstraints();
  91.     con.gridx = gridx;
  92.     con.gridy = gridy;
  93.     con.gridwidth = gridwidth;
  94.     con.gridheight = gridheight;
  95.     con.anchor = anchor;
  96.     con.fill = fill;
  97.     con.ipadx = ipadx;
  98.     con.ipady = ipady;
  99.     con.weightx=weightx;
  100.     con.weighty=weighty;
  101.     con.insets = new Insets(top,left,bottom,right);
  102.     grid.setConstraints(comp,con);
  103.   }
  104.   
  105.   public void setParent(namedb caller) {
  106.     parent = caller;
  107.   }
  108.   
  109.   public void updateData() {
  110.     int i=0;
  111.     String listItems[]=parent.getApi().getAllKeys();
  112.     nameList.clear();
  113.     for (i=0;i<listItems.length;i++) {
  114.       nameList.addItem(listItems[i]);
  115.     }
  116.   }
  117.   public void showIt() {
  118.     updateData();
  119.     pack();
  120.     show();
  121.   }
  122.   
  123.   public void popCancel() {
  124.     hide();
  125.   }
  126.   
  127.   public void popOk() {
  128.     if (nameList.getSelectedIndex() == -1) {
  129.       return;
  130.     }
  131.     parent.getApi().showEntry(nameList.getSelectedIndex());
  132.     parent.updateScreen();
  133.   }
  134. }
  135.  
  136.  
  137.