home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / plaf / metal / MetalMenuItemBorder.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  1.7 KB  |  48 lines

  1. package com.sun.java.swing.plaf.metal;
  2.  
  3. import com.sun.java.swing.AbstractButton;
  4. import com.sun.java.swing.ButtonModel;
  5. import com.sun.java.swing.JMenu;
  6. import com.sun.java.swing.JMenuBar;
  7. import com.sun.java.swing.JMenuItem;
  8. import com.sun.java.swing.border.AbstractBorder;
  9. import java.awt.Component;
  10. import java.awt.Graphics;
  11. import java.awt.Insets;
  12.  
  13. public class MetalMenuItemBorder extends AbstractBorder {
  14.    protected static Insets borderInsets = new Insets(2, 2, 2, 2);
  15.  
  16.    public void paintBorder(Component var1, Graphics var2, int var3, int var4, int var5, int var6) {
  17.       JMenuItem var7 = (JMenuItem)var1;
  18.       ButtonModel var8 = ((AbstractButton)var7).getModel();
  19.       var2.translate(var3, var4);
  20.       if (var1.getParent() instanceof JMenuBar) {
  21.          if (var8.isArmed() || var8.isSelected()) {
  22.             var2.setColor(MetalLookAndFeel.getControlDarkShadow());
  23.             var2.drawLine(0, 0, var5 - 2, 0);
  24.             var2.drawLine(0, 0, 0, var6 - 1);
  25.             var2.drawLine(var5 - 2, 2, var5 - 2, var6 - 1);
  26.             var2.setColor(MetalLookAndFeel.getPrimaryControlHighlight());
  27.             var2.drawLine(var5 - 1, 1, var5 - 1, var6 - 1);
  28.             var2.setColor(MetalLookAndFeel.getMenuBackground());
  29.             var2.drawLine(var5 - 1, 0, var5 - 1, 0);
  30.          }
  31.       } else if (!var8.isArmed() && (!(var1 instanceof JMenu) || !var8.isSelected())) {
  32.          var2.setColor(MetalLookAndFeel.getPrimaryControlHighlight());
  33.          var2.drawLine(0, 0, 0, var6 - 1);
  34.       } else {
  35.          var2.setColor(MetalLookAndFeel.getPrimaryControlDarkShadow());
  36.          var2.drawLine(0, 0, var5 - 1, 0);
  37.          var2.setColor(MetalLookAndFeel.getPrimaryControlHighlight());
  38.          var2.drawLine(0, var6 - 1, var5 - 1, var6 - 1);
  39.       }
  40.  
  41.       var2.translate(-var3, -var4);
  42.    }
  43.  
  44.    public Insets getBorderInsets(Component var1) {
  45.       return borderInsets;
  46.    }
  47. }
  48.