home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / plaf / metal / MetalDesktopIconUI.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  3.3 KB  |  61 lines

  1. package javax.swing.plaf.metal;
  2.  
  3. import java.awt.BorderLayout;
  4. import java.awt.Dimension;
  5. import java.awt.LayoutManager;
  6. import javax.swing.Icon;
  7. import javax.swing.JButton;
  8. import javax.swing.JComponent;
  9. import javax.swing.JInternalFrame;
  10. import javax.swing.JLabel;
  11. import javax.swing.LookAndFeel;
  12. import javax.swing.border.MatteBorder;
  13. import javax.swing.plaf.ComponentUI;
  14. import javax.swing.plaf.basic.BasicDesktopIconUI;
  15.  
  16. public class MetalDesktopIconUI extends BasicDesktopIconUI {
  17.    JButton button;
  18.    JLabel label;
  19.    TitleListener titleListener;
  20.  
  21.    public static ComponentUI createUI(JComponent var0) {
  22.       return new MetalDesktopIconUI();
  23.    }
  24.  
  25.    public Dimension getPreferredSize(JComponent var1) {
  26.       return null;
  27.    }
  28.  
  29.    protected void installComponents() {
  30.       JInternalFrame var1 = super.desktopIcon.getInternalFrame();
  31.       Icon var2 = var1.getFrameIcon();
  32.       String var3 = var1.getTitle();
  33.       this.button = new JButton(var3, var2);
  34.       this.button.addActionListener(new 1(this));
  35.       this.button.setFont(super.desktopIcon.getFont());
  36.       this.button.setBackground(super.desktopIcon.getBackground());
  37.       this.button.setForeground(super.desktopIcon.getForeground());
  38.       int var4 = this.button.getPreferredSize().height;
  39.       MetalBumps var5 = new MetalBumps(var4 / 3, var4, MetalLookAndFeel.getControlHighlight(), MetalLookAndFeel.getControlDarkShadow(), MetalLookAndFeel.getControl());
  40.       this.label = new JLabel(var5);
  41.       this.label.setBorder(new MatteBorder(0, 2, 0, 1, super.desktopIcon.getBackground()));
  42.       super.desktopIcon.setLayout(new BorderLayout(2, 0));
  43.       super.desktopIcon.add(this.button, "Center");
  44.       super.desktopIcon.add(this.label, "West");
  45.       super.desktopIcon.getInternalFrame().addPropertyChangeListener(this.titleListener = new TitleListener(this));
  46.    }
  47.  
  48.    protected void installDefaults() {
  49.       super.installDefaults();
  50.       LookAndFeel.installColorsAndFont(super.desktopIcon, "DesktopIcon.background", "DesktopIcon.foreground", "DesktopIcon.font");
  51.       super.desktopIcon.setOpaque(true);
  52.    }
  53.  
  54.    protected void uninstallComponents() {
  55.       super.desktopIcon.setLayout((LayoutManager)null);
  56.       super.desktopIcon.remove(this.label);
  57.       super.desktopIcon.remove(this.button);
  58.       super.desktopIcon.getInternalFrame().removePropertyChangeListener(this.titleListener);
  59.    }
  60. }
  61.