home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / rt.jar / sun / awt / windows / WChoicePeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  2.1 KB  |  82 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.Graphics;
  8. import java.awt.Rectangle;
  9. import java.awt.event.ItemEvent;
  10. import java.awt.peer.ChoicePeer;
  11.  
  12. class WChoicePeer extends WComponentPeer implements ChoicePeer {
  13.    public Dimension getMinimumSize() {
  14.       FontMetrics var1 = ((WComponentPeer)this).getFontMetrics(((Choice)super.target).getFont());
  15.       Choice var2 = (Choice)super.target;
  16.       int var3 = 0;
  17.  
  18.       for(int var4 = var2.getItemCount(); var4-- > 0; var3 = Math.max(var1.stringWidth(var2.getItem(var4)), var3)) {
  19.       }
  20.  
  21.       int var5 = WToolkit.getComboHeightOffset();
  22.       return new Dimension(28 + var3, Math.max(var1.getHeight() + var5 + 6, 21 + var5));
  23.    }
  24.  
  25.    public boolean isFocusTraversable() {
  26.       return true;
  27.    }
  28.  
  29.    public native void select(int var1);
  30.  
  31.    public void add(String var1, int var2) {
  32.       this.addItem(var1, var2);
  33.    }
  34.  
  35.    public native void remove(int var1);
  36.  
  37.    void clearRectBeforePaint(Graphics var1, Rectangle var2) {
  38.    }
  39.  
  40.    public native void addItem(String var1, int var2);
  41.  
  42.    public native void reshape(int var1, int var2, int var3, int var4);
  43.  
  44.    WChoicePeer(Choice var1) {
  45.       super(var1);
  46.    }
  47.  
  48.    native void create(WComponentPeer var1);
  49.  
  50.    void initialize() {
  51.       Choice var1 = (Choice)super.target;
  52.       int var2 = var1.getItemCount();
  53.  
  54.       for(int var3 = 0; var3 < var2; ++var3) {
  55.          this.add(var1.getItem(var3), var3);
  56.       }
  57.  
  58.       if (var2 > 0 && var1.getSelectedIndex() >= 0) {
  59.          this.select(var1.getSelectedIndex());
  60.       }
  61.  
  62.       super.initialize();
  63.    }
  64.  
  65.    void handleAction(int var1) {
  66.       Choice var2 = (Choice)super.target;
  67.       var2.select(var1);
  68.       WToolkit.postEvent(new ItemEvent(var2, 701, var2.getItem(var1), 1));
  69.    }
  70.  
  71.    int getDropDownHeight() {
  72.       Choice var1 = (Choice)super.target;
  73.       FontMetrics var2 = ((WComponentPeer)this).getFontMetrics(((Component)var1).getFont());
  74.       int var3 = Math.min(var1.getItemCount(), 8);
  75.       return var2.getHeight() * var3;
  76.    }
  77.  
  78.    public Dimension minimumSize() {
  79.       return this.getMinimumSize();
  80.    }
  81. }
  82.