/[classpath]/classpath/javax/swing/plaf/basic/BasicMenuUI.java
ViewVC logotype

Diff of /classpath/javax/swing/plaf/basic/BasicMenuUI.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by mark, Sat Jun 26 16:07:02 2004 UTC revision 1.4 by mark, Thu Jul 22 19:45:39 2004 UTC
# Line 213  public class BasicMenuUI extends BasicMe Line 213  public class BasicMenuUI extends BasicMe
213      acceleratorFont = defaults.getFont("Menu.acceleratorFont");      acceleratorFont = defaults.getFont("Menu.acceleratorFont");
214      acceleratorForeground = defaults.getColor("Menu.acceleratorForeground");      acceleratorForeground = defaults.getColor("Menu.acceleratorForeground");
215      acceleratorSelectionForeground = defaults.getColor("Menu.acceleratorSelectionForeground");      acceleratorSelectionForeground = defaults.getColor("Menu.acceleratorSelectionForeground");
216        selectionBackground = defaults.getColor("Menu.selectionBackground");
217        selectionForeground = defaults.getColor("Menu.selectionForeground");
218      arrowIcon = defaults.getIcon("Menu.arrowIcon");      arrowIcon = defaults.getIcon("Menu.arrowIcon");
219      oldBorderPainted = defaults.getBoolean("Menu.borderPainted");      oldBorderPainted = defaults.getBoolean("Menu.borderPainted");
220        menuItem.setOpaque(true);
221    }    }
222    
223    /**    /**
# Line 233  public class BasicMenuUI extends BasicMe Line 236  public class BasicMenuUI extends BasicMe
236    protected void installListeners()    protected void installListeners()
237    {    {
238      ((JMenu) menuItem).addMouseListener(mouseInputListener);      ((JMenu) menuItem).addMouseListener(mouseInputListener);
239        ((JMenu) menuItem).addMouseMotionListener(mouseInputListener);
240      ((JMenu) menuItem).addMenuListener(menuListener);      ((JMenu) menuItem).addMenuListener(menuListener);
241        ((JMenu) menuItem).addMenuDragMouseListener(menuDragMouseListener);
242    }    }
243    
244    protected void setupPostTimer(JMenu menu)    protected void setupPostTimer(JMenu menu)
# Line 254  public class BasicMenuUI extends BasicMe Line 259  public class BasicMenuUI extends BasicMe
259      acceleratorFont = null;      acceleratorFont = null;
260      acceleratorForeground = null;      acceleratorForeground = null;
261      acceleratorSelectionForeground = null;      acceleratorSelectionForeground = null;
262        selectionBackground = null;
263        selectionForeground = null;
264      arrowIcon = null;      arrowIcon = null;
265    }    }
266    
# Line 304  public class BasicMenuUI extends BasicMe Line 311  public class BasicMenuUI extends BasicMe
311                 selected. (If nothing was selected, menu should be pressed before                 selected. (If nothing was selected, menu should be pressed before
312                 it will be selected)                       it will be selected)      
313        */        */
         
314        JMenu menu = (JMenu) menuItem;        JMenu menu = (JMenu) menuItem;
315        if (! menu.isTopLevelMenu()        if (! menu.isTopLevelMenu()
316            || (menu.isTopLevelMenu()            || (menu.isTopLevelMenu()
317            && (((JMenuBar) menu.getParent()).isSelected())))            && (((JMenuBar) menu.getParent()).isSelected() && ! menu.isArmed())))
318          {          {
319            // set new selection and forward this event to MenuSelectionManager            // set new selection and forward this event to MenuSelectionManager
320            MenuSelectionManager manager = MenuSelectionManager.defaultManager();            MenuSelectionManager manager = MenuSelectionManager.defaultManager();
# Line 329  public class BasicMenuUI extends BasicMe Line 335  public class BasicMenuUI extends BasicMe
335    
336      public void mousePressed(MouseEvent e)      public void mousePressed(MouseEvent e)
337      {      {
   
338        MenuSelectionManager manager = MenuSelectionManager.defaultManager();        MenuSelectionManager manager = MenuSelectionManager.defaultManager();
339        JMenu menu = (JMenu) menuItem;        JMenu menu = (JMenu) menuItem;
340        manager.processMouseEvent(e);        manager.processMouseEvent(e);
# Line 339  public class BasicMenuUI extends BasicMe Line 344  public class BasicMenuUI extends BasicMe
344        if (menu.isTopLevelMenu())        if (menu.isTopLevelMenu())
345          {          {
346            if (menu.getPopupMenu().isVisible())            if (menu.getPopupMenu().isVisible())
             {  
347                // If menu is visible and menu button was pressed..                // If menu is visible and menu button was pressed..
348                // then need to cancel the menu                // then need to cancel the menu
349                manager.clearSelectedPath();                manager.clearSelectedPath();
             }  
350            else            else
351              {              {
352                // Display the menu                // Display the menu
# Line 374  public class BasicMenuUI extends BasicMe Line 377  public class BasicMenuUI extends BasicMe
377    {    {
378      /**      /**
379       * This method is called when menu is cancelled. The menu is cancelled       * This method is called when menu is cancelled. The menu is cancelled
380       * when its popup menu is closed without selection.       * when its popup menu is closed without selection. It clears selected index
381         * in the selectionModel of the menu parent.
382       *       *
383       * @param e The MenuEvent.       * @param e The MenuEvent.
384       */       */
385      public void menuCanceled(MenuEvent e)      public void menuCanceled(MenuEvent e)
386      {      {
387          menuDeselected(e);
388      }      }
389    
390      /**      /**
391       * This method is called when menu is deselected.       * This method is called when menu is deselected. It clears selected index
392         * in the selectionModel of the menu parent.
393       *       *
394       * @param e The MenuEvent.       * @param e The MenuEvent.
395       */       */
396      public void menuDeselected(MenuEvent e)      public void menuDeselected(MenuEvent e)
397      {      {
398          JMenu menu = (JMenu) menuItem;
399          if (menu.isTopLevelMenu())
400            ((JMenuBar) menu.getParent()).getSelectionModel().clearSelection();
401          else
402            ((JPopupMenu) menu.getParent()).getSelectionModel().clearSelection();
403      }      }
404    
405      /**      /**
406       * This method is called when menu is selected.       * This method is called when menu is selected.  It sets selected index
407         * in the selectionModel of the menu parent.
408       *       *
409       * @param e The MenuEvent.       * @param e The MenuEvent.
410       */       */
411      public void menuSelected(MenuEvent e)      public void menuSelected(MenuEvent e)
412      {      {
413          JMenu menu = (JMenu) menuItem;
414          if (menu.isTopLevelMenu())
415            ((JMenuBar) menu.getParent()).setSelected(menu);
416          else
417            ((JPopupMenu) menu.getParent()).setSelected(menu);
418      }      }
419    }    }
420    
# Line 426  public class BasicMenuUI extends BasicMe Line 443  public class BasicMenuUI extends BasicMe
443    }    }
444    
445    /**    /**
446     * This class handles mouse dragged events.     * This class handles mouse dragged events occuring in the menu.
447     */     */
448    protected class MenuDragMouseHandler implements MenuDragMouseListener    protected class MenuDragMouseHandler implements MenuDragMouseListener
449    {    {
450      /**      /**
451       * Tbis method is invoked when mouse is dragged over the menu item.       * This method is invoked when mouse is dragged over the menu item.
452       *       *
453       * @param e The MenuDragMouseEvent       * @param e The MenuDragMouseEvent
454       */       */
455      public void menuDragMouseDragged(MenuDragMouseEvent e)      public void menuDragMouseDragged(MenuDragMouseEvent e)
456      {      {
457          MenuSelectionManager manager = MenuSelectionManager.defaultManager();
458          manager.setSelectedPath(e.getPath());
459      }      }
460    
461      /**      /**
462       * Tbis method is invoked when mouse enters the menu item while it is       * This method is invoked when mouse enters the menu item while it is
463       * being dragged.       * being dragged.
464       *       *
465       * @param e The MenuDragMouseEvent       * @param e The MenuDragMouseEvent
466       */       */
467      public void menuDragMouseEntered(MenuDragMouseEvent e)      public void menuDragMouseEntered(MenuDragMouseEvent e)
468      {      {
469          MenuSelectionManager manager = MenuSelectionManager.defaultManager();
470          manager.setSelectedPath(e.getPath());
471      }      }
472    
473      /**      /**
474       * Tbis method is invoked when mouse exits the menu item while       * This method is invoked when mouse exits the menu item while
475       * it is being dragged       * it is being dragged
476       *       *
477       * @param e The MenuDragMouseEvent       * @param e The MenuDragMouseEvent
# Line 460  public class BasicMenuUI extends BasicMe Line 481  public class BasicMenuUI extends BasicMe
481      }      }
482    
483      /**      /**
484       * Tbis method is invoked when mouse was dragged and released       * This method is invoked when mouse was dragged and released
485       * inside the menu item.       * inside the menu item.
486       *       *
487       * @param e The MenuDragMouseEvent       * @param e The MenuDragMouseEvent

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26