home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1998 January / PCO0198.ISO / browser / net_linx / java40.jar / sun / awt / motif / MChoicePeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-03  |  1.8 KB  |  69 lines

  1. package sun.awt.motif;
  2.  
  3. import java.awt.Choice;
  4. import java.awt.Color;
  5. import java.awt.Dimension;
  6. import java.awt.Event;
  7. import java.awt.Font;
  8. import java.awt.peer.ChoicePeer;
  9.  
  10. class MChoicePeer extends MComponentPeer implements ChoicePeer {
  11.    native void create(MComponentPeer var1);
  12.  
  13.    native void pReshape(int var1, int var2, int var3, int var4);
  14.  
  15.    public native void select(int var1);
  16.  
  17.    void initialize() {
  18.       Choice var1 = (Choice)super.target;
  19.       int var2 = var1.countItems();
  20.  
  21.       for(int var3 = 0; var3 < var2; ++var3) {
  22.          this.addItem(var1.getItem(var3), var3);
  23.       }
  24.  
  25.       this.select(var1.getSelectedIndex());
  26.       super.initialize();
  27.    }
  28.  
  29.    public MChoicePeer(Choice var1) {
  30.       super(var1);
  31.    }
  32.  
  33.    public Dimension minimumSize() {
  34.       X11FontMetrics var1 = (X11FontMetrics)((MComponentPeer)this).getFontMetrics(super.target.getFont());
  35.       Choice var2 = (Choice)super.target;
  36.       int var3 = 0;
  37.       int var4 = 0;
  38.       Dimension var5 = new Dimension();
  39.  
  40.       for(int var6 = var2.countItems(); var6-- > 0; var4 = Math.max(var5.height, var4)) {
  41.          var5 = var1.stringExtent(var2.getItem(var6));
  42.          var3 = Math.max(var5.width, var3);
  43.       }
  44.  
  45.       var5.width = var3 + 32;
  46.       var5.height = Math.max(var4 + 8, 15) + 5;
  47.       return var5;
  48.    }
  49.  
  50.    public native void setFont(Font var1);
  51.  
  52.    public native void addItem(String var1, int var2);
  53.  
  54.    public native void remove(int var1);
  55.  
  56.    public native void setBackground(Color var1);
  57.  
  58.    void action(int var1) {
  59.       Choice var2 = (Choice)super.target;
  60.       var2.select(var1);
  61.       if (super.applet != null) {
  62.          XEvent var3 = new XEvent(new Event(super.target, 1001, var2.getItem(var1)), this);
  63.          super.applet.sendEvent(var3);
  64.       } else {
  65.          super.target.postEvent(new Event(super.target, 1001, var2.getItem(var1)));
  66.       }
  67.    }
  68. }
  69.