home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 25 / CDROM25.iso / Share / prog / VJ11 / VJTRIAL.EXE / IE30Java.exe / classd.exe / sun / awt / win32 / MChoicePeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-01-27  |  1.5 KB  |  54 lines

  1. package sun.awt.win32;
  2.  
  3. import java.awt.Choice;
  4. import java.awt.Dimension;
  5. import java.awt.Event;
  6. import java.awt.FontMetrics;
  7. import java.awt.peer.ChoicePeer;
  8.  
  9. class MChoicePeer extends MComponentPeer implements ChoicePeer {
  10.    native void create(MComponentPeer var1);
  11.  
  12.    public native void select(int var1);
  13.  
  14.    void initialize() {
  15.       Choice var1 = (Choice)super.target;
  16.       int var2 = var1.countItems();
  17.  
  18.       for(int var3 = 0; var3 < var2; ++var3) {
  19.          this.addItem(var1.getItem(var3), var3);
  20.       }
  21.  
  22.       if (var2 > 0 && var1.getSelectedIndex() >= 0) {
  23.          this.select(var1.getSelectedIndex());
  24.       }
  25.  
  26.       super.initialize();
  27.    }
  28.  
  29.    public MChoicePeer(Choice var1) {
  30.       super(var1);
  31.    }
  32.  
  33.    public Dimension minimumSize() {
  34.       FontMetrics var1 = ((MComponentPeer)this).getFontMetrics(super.target.getFont());
  35.       Choice var2 = (Choice)super.target;
  36.       int var3 = 0;
  37.  
  38.       for(int var4 = var2.countItems(); var4-- > 0; var3 = Math.max(var1.stringWidth(var2.getItem(var4)), var3)) {
  39.       }
  40.  
  41.       return new Dimension(28 + var3, Math.max(var1.getHeight() + 8, 15) + 3);
  42.    }
  43.  
  44.    public native void addItem(String var1, int var2);
  45.  
  46.    public native void remove(int var1);
  47.  
  48.    void action(int var1) {
  49.       Choice var2 = (Choice)super.target;
  50.       var2.select(var1);
  51.       super.target.postEvent(new Event(super.target, 1001, var2.getItem(var1)));
  52.    }
  53. }
  54.