1. /*
  2. * @(#)DefaultMenuLayout.java 1.8 03/12/19
  3. *
  4. * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. */
  7. package javax.swing.plaf.basic;
  8. import javax.swing.*;
  9. import javax.swing.plaf.UIResource;
  10. import java.awt.Container;
  11. import java.awt.Dimension;
  12. /**
  13. * The default layout manager for Popup menus and menubars. This
  14. * class is an extension of BoxLayout which adds the UIResource tag
  15. * so that plauggable L&Fs can distinguish it from user-installed
  16. * layout managers on menus.
  17. *
  18. * @version 1.8 12/19/03
  19. * @author Georges Saab
  20. */
  21. public class DefaultMenuLayout extends BoxLayout implements UIResource {
  22. public DefaultMenuLayout(Container target, int axis) {
  23. super(target, axis);
  24. }
  25. public Dimension preferredLayoutSize(Container target) {
  26. if (target instanceof JPopupMenu) {
  27. ((JPopupMenu)target).putClientProperty(
  28. BasicMenuItemUI.MAX_TEXT_WIDTH, null);
  29. ((JPopupMenu)target).putClientProperty(
  30. BasicMenuItemUI.MAX_ACC_WIDTH, null);
  31. }
  32. return super.preferredLayoutSize(target);
  33. }
  34. }