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

  1. package com.sun.java.swing.plaf.basic;
  2.  
  3. import com.sun.java.swing.AbstractButton;
  4. import com.sun.java.swing.JComponent;
  5. import com.sun.java.swing.JMenu;
  6. import com.sun.java.swing.JMenuBar;
  7. import com.sun.java.swing.LookAndFeel;
  8. import com.sun.java.swing.event.ChangeListener;
  9. import com.sun.java.swing.plaf.ComponentUI;
  10. import com.sun.java.swing.plaf.MenuBarUI;
  11. import java.awt.Dimension;
  12. import java.awt.event.MouseMotionListener;
  13. import java.io.Serializable;
  14.  
  15. public class BasicMenuBarUI extends MenuBarUI implements Serializable {
  16.    protected JMenuBar menuBar;
  17.    protected MouseListener mouseListener;
  18.    protected MouseMotionListener dragListener;
  19.    protected ChangeListener menuChangeListener;
  20.  
  21.    public static ComponentUI createUI(JComponent var0) {
  22.       return new BasicMenuBarUI();
  23.    }
  24.  
  25.    public void installUI(JComponent var1) {
  26.       this.menuBar = (JMenuBar)var1;
  27.       this.initListeners();
  28.       this.addListeners();
  29.       var1.setOpaque(true);
  30.       LookAndFeel.installBorder(var1, "MenuBar.border");
  31.       LookAndFeel.installColorsAndFont(var1, "MenuBar.background", "MenuBar.foreground", "MenuBar.font");
  32.    }
  33.  
  34.    public void uninstallUI(JComponent var1) {
  35.       this.removeListeners();
  36.       var1.resetKeyboardActions();
  37.       LookAndFeel.uninstallBorder(var1);
  38.    }
  39.  
  40.    protected void initListeners() {
  41.       this.mouseListener = this.createMouseListener();
  42.       this.dragListener = this.createMouseMotionListener();
  43.       this.menuChangeListener = this.createChangeListener();
  44.    }
  45.  
  46.    protected MouseListener createMouseListener() {
  47.       return new MouseListener(this.menuBar);
  48.    }
  49.  
  50.    protected MouseMotionListener createMouseMotionListener() {
  51.       return new BasicMenuMouseMotionListener();
  52.    }
  53.  
  54.    protected ChangeListener createChangeListener() {
  55.       return new 1(this);
  56.    }
  57.  
  58.    protected void addListeners() {
  59.       for(int var1 = 0; var1 < this.menuBar.getMenuCount(); ++var1) {
  60.          this.registerMenu(this.menuBar.getMenu(var1));
  61.       }
  62.  
  63.    }
  64.  
  65.    protected void removeListeners() {
  66.       for(int var1 = 0; var1 < this.menuBar.getMenuCount(); ++var1) {
  67.          this.unregisterMenu(this.menuBar.getMenu(var1));
  68.       }
  69.  
  70.    }
  71.  
  72.    public void registerMenu(JMenu var1) {
  73.       ((AbstractButton)var1).getModel().addChangeListener(this.menuChangeListener);
  74.    }
  75.  
  76.    public void unregisterMenu(JMenu var1) {
  77.       ((AbstractButton)var1).getModel().removeChangeListener(this.menuChangeListener);
  78.    }
  79.  
  80.    public Dimension getPreferredSize(JComponent var1) {
  81.       return null;
  82.    }
  83.  
  84.    public Dimension getMinimumSize(JComponent var1) {
  85.       return null;
  86.    }
  87.  
  88.    public Dimension getMaximumSize(JComponent var1) {
  89.       return null;
  90.    }
  91. }
  92.