home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / sun / awt / motif / MMenuBarPeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  2.4 KB  |  81 lines

  1. package sun.awt.motif;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Component;
  5. import java.awt.Container;
  6. import java.awt.Dimension;
  7. import java.awt.FontMetrics;
  8. import java.awt.Frame;
  9. import java.awt.Graphics;
  10. import java.awt.Insets;
  11. import java.awt.Menu;
  12. import java.awt.MenuBar;
  13. import java.awt.MenuComponent;
  14. import java.awt.MenuItem;
  15. import java.awt.peer.MenuBarPeer;
  16.  
  17. public class MMenuBarPeer implements MenuBarPeer {
  18.    int pData;
  19.    MenuBar target;
  20.    static final int GAP = 10;
  21.  
  22.    native void create(MFramePeer var1);
  23.  
  24.    public MMenuBarPeer(MenuBar var1) {
  25.       this.target = var1;
  26.       MFramePeer var2 = (MFramePeer)MToolkit.targetToPeer(((MenuComponent)var1).getParent());
  27.       this.create(var2);
  28.    }
  29.  
  30.    public native void dispose();
  31.  
  32.    public void addMenu(Menu var1) {
  33.    }
  34.  
  35.    public void delMenu(int var1) {
  36.    }
  37.  
  38.    public void addHelpMenu(Menu var1) {
  39.    }
  40.  
  41.    void print(Graphics var1) {
  42.       MenuBar var2 = this.target;
  43.       var1.setFont(((MenuComponent)var2).getFont());
  44.       FontMetrics var3 = var1.getFontMetrics();
  45.       Frame var4 = (Frame)this.target.getParent();
  46.       Dimension var5 = ((Component)var4).size();
  47.       Insets var6 = ((Container)var4).insets();
  48.       Dimension var7 = new Dimension(var5.width - var6.left - var6.right, var3.getAscent() * 3);
  49.       Color var8 = ((Component)var4).getBackground();
  50.       Color var9 = ((Component)var4).getForeground();
  51.       Color var10 = var8.brighter();
  52.       Color var11 = var8.darker();
  53.       var1.setColor(var10);
  54.       var1.drawLine(0, 0, var7.width - 1, 0);
  55.       var1.drawLine(1, 1, var7.width - 2, 1);
  56.       var1.drawLine(0, 0, 0, var7.height - 1);
  57.       var1.drawLine(1, 1, 1, var7.height - 2);
  58.       var1.setColor(var11);
  59.       var1.drawLine(var7.width - 1, 0, var7.width - 1, var7.height - 1);
  60.       var1.drawLine(var7.width - 2, 1, var7.width - 2, var7.height - 2);
  61.       var1.drawLine(0, var7.height - 1, var7.width - 1, var7.height - 1);
  62.       var1.drawLine(1, var7.height - 2, var7.width - 2, var7.height - 2);
  63.       int var12 = 10;
  64.       int var13 = (var7.height + var3.getAscent() - var3.getDescent()) / 2;
  65.       int var14 = var2.countMenus();
  66.  
  67.       for(int var15 = 0; var15 < var14; ++var15) {
  68.          Menu var16 = this.target.getMenu(var15);
  69.          String var17 = ((MenuItem)var16).getLabel();
  70.          int var18 = var3.stringWidth(var17) + 20;
  71.          var1.setColor(var9);
  72.          var1.drawString(var17, var12, var13);
  73.          var12 += var18;
  74.          if (var12 >= var7.width) {
  75.             return;
  76.          }
  77.       }
  78.  
  79.    }
  80. }
  81.