home *** CD-ROM | disk | FTP | other *** search
- package sun.awt.windows;
-
- import java.awt.Choice;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Rectangle;
- import java.awt.event.ItemEvent;
- import java.awt.peer.ChoicePeer;
-
- class WChoicePeer extends WComponentPeer implements ChoicePeer {
- public Dimension getMinimumSize() {
- FontMetrics var1 = ((WComponentPeer)this).getFontMetrics(((Choice)super.target).getFont());
- Choice var2 = (Choice)super.target;
- int var3 = 0;
-
- for(int var4 = var2.getItemCount(); var4-- > 0; var3 = Math.max(var1.stringWidth(var2.getItem(var4)), var3)) {
- }
-
- int var5 = WToolkit.getComboHeightOffset();
- return new Dimension(28 + var3, Math.max(var1.getHeight() + var5 + 6, 21 + var5));
- }
-
- public boolean isFocusTraversable() {
- return true;
- }
-
- public native void select(int var1);
-
- public void add(String var1, int var2) {
- this.addItem(var1, var2);
- }
-
- public native void remove(int var1);
-
- void clearRectBeforePaint(Graphics var1, Rectangle var2) {
- }
-
- public native void addItem(String var1, int var2);
-
- public native void reshape(int var1, int var2, int var3, int var4);
-
- WChoicePeer(Choice var1) {
- super(var1);
- }
-
- native void create(WComponentPeer var1);
-
- void initialize() {
- Choice var1 = (Choice)super.target;
- int var2 = var1.getItemCount();
-
- for(int var3 = 0; var3 < var2; ++var3) {
- this.add(var1.getItem(var3), var3);
- }
-
- if (var2 > 0 && var1.getSelectedIndex() >= 0) {
- this.select(var1.getSelectedIndex());
- }
-
- super.initialize();
- }
-
- void handleAction(int var1) {
- Choice var2 = (Choice)super.target;
- var2.select(var1);
- WToolkit.postEvent(new ItemEvent(var2, 701, var2.getItem(var1), 1));
- }
-
- int getDropDownHeight() {
- Choice var1 = (Choice)super.target;
- FontMetrics var2 = ((WComponentPeer)this).getFontMetrics(((Component)var1).getFont());
- int var3 = Math.min(var1.getItemCount(), 8);
- return var2.getHeight() * var3;
- }
-
- public Dimension minimumSize() {
- return this.getMinimumSize();
- }
- }
-