home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VPage / Java.bin / CLASSES.ZIP / sun / awt / windows / WChoicePeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-07-08  |  1.9 KB  |  76 lines

  1. package sun.awt.windows;
  2.  
  3. import java.awt.Choice;
  4. import java.awt.Component;
  5. import java.awt.Dimension;
  6. import java.awt.FontMetrics;
  7. import java.awt.event.ItemEvent;
  8. import java.awt.peer.ChoicePeer;
  9.  
  10. class WChoicePeer extends WComponentPeer implements ChoicePeer {
  11.    public Dimension getMinimumSize() {
  12.       FontMetrics var1 = ((WComponentPeer)this).getFontMetrics(((Choice)super.target).getFont());
  13.       Choice var2 = (Choice)super.target;
  14.       int var3 = 0;
  15.  
  16.       for(int var4 = var2.getItemCount(); var4-- > 0; var3 = Math.max(var1.stringWidth(var2.getItem(var4)), var3)) {
  17.       }
  18.  
  19.       return new Dimension(28 + var3, Math.max(var1.getHeight() + 6, 15));
  20.    }
  21.  
  22.    public boolean isFocusTraversable() {
  23.       return true;
  24.    }
  25.  
  26.    public native void select(int var1);
  27.  
  28.    public void add(String var1, int var2) {
  29.       this.addItem(var1, var2);
  30.    }
  31.  
  32.    public native void remove(int var1);
  33.  
  34.    public native void addItem(String var1, int var2);
  35.  
  36.    public native void reshape(int var1, int var2, int var3, int var4);
  37.  
  38.    WChoicePeer(Choice var1) {
  39.       super(var1);
  40.    }
  41.  
  42.    native void create(WComponentPeer var1);
  43.  
  44.    void initialize() {
  45.       Choice var1 = (Choice)super.target;
  46.       int var2 = var1.getItemCount();
  47.  
  48.       for(int var3 = 0; var3 < var2; ++var3) {
  49.          this.add(var1.getItem(var3), var3);
  50.       }
  51.  
  52.       if (var2 > 0 && var1.getSelectedIndex() >= 0) {
  53.          this.select(var1.getSelectedIndex());
  54.       }
  55.  
  56.       super.initialize();
  57.    }
  58.  
  59.    void handleAction(int var1) {
  60.       Choice var2 = (Choice)super.target;
  61.       var2.select(var1);
  62.       WToolkit.postEvent(new ItemEvent(var2, 701, var2.getItem(var1), 1));
  63.    }
  64.  
  65.    int getDropDownHeight() {
  66.       Choice var1 = (Choice)super.target;
  67.       FontMetrics var2 = ((WComponentPeer)this).getFontMetrics(((Component)var1).getFont());
  68.       int var3 = Math.min(var1.getItemCount(), 8);
  69.       return var2.getHeight() * var3;
  70.    }
  71.  
  72.    public Dimension minimumSize() {
  73.       return this.getMinimumSize();
  74.    }
  75. }
  76.