Java Code Examples for javax.swing.plaf.basic.BasicMenuItemUI

The following examples show how to use javax.swing.plaf.basic.BasicMenuItemUI. These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: consulo   Source File: GtkPaintingUtil.java    License: Apache License 2.0 6 votes vote down vote up
public static void paintDisabledText(final BasicMenuItemUI originalUI,
                                     final Graphics g,
                                     final JMenuItem menuItem,
                                     final Rectangle textRect,
                                     final String text) {
  final FontMetrics fm = SwingUtilities2.getFontMetrics(menuItem, g);
  final int index = menuItem.getDisplayedMnemonicIndex();

  final Color fg = getForeground(originalUI, menuItem);
  final Color shadow = UIUtil.shade(menuItem.getBackground(), 1.24, 0.5);

  g.setColor(shadow);
  SwingUtilities2.drawStringUnderlineCharAt(menuItem, g, text, index, textRect.x + 1, textRect.y + fm.getAscent() + 1);
  g.setColor(fg);
  SwingUtilities2.drawStringUnderlineCharAt(menuItem, g, text, index, textRect.x, textRect.y + fm.getAscent());
}
 
Example 2
Source Project: consulo   Source File: GtkMenuItemUI.java    License: Apache License 2.0 5 votes vote down vote up
private static Icon getCheckIconFromContext(final BasicMenuItemUI originalUI, final JCheckBoxMenuItem item) {
  if (myCachedCheckIcon == null) {
    final SynthContext context = GtkPaintingUtil.getSynthContext(originalUI, item);
    myCachedCheckIcon = context.getStyle().getIcon(context, "CheckBoxMenuItem.checkIcon");
  }
  return myCachedCheckIcon;
}
 
Example 3
Source Project: java-swing-tips   Source File: MainPanel.java    License: MIT License 4 votes vote down vote up
@Override protected MouseInputListener createMouseInputListener(JComponent c) {
  return new BasicMenuItemUI.MouseInputHandler() {
    @Override public void mousePressed(MouseEvent e) {
      JMenu menu = (JMenu) menuItem;
      if (!menu.isEnabled() || SwingUtilities.isRightMouseButton(e)) {
        return;
      }
      super.mousePressed(e);
      // MenuSelectionManager manager = MenuSelectionManager.defaultManager();
      // if (menu.isTopLevelMenu()) {
      //   if (menu.isSelected() && menu.getPopupMenu().isShowing()) {
      //     manager.clearSelectedPath();
      //   } else {
      //     Container cnt = menu.getParent();
      //     if (cnt instanceof JMenuBar) {
      //       MenuElement[] me = new MenuElement[2];
      //       me[0] = (MenuElement) cnt;
      //       me[1] = menu;
      //       manager.setSelectedPath(me);
      //     }
      //   }
      // }
      // MenuElement[] selectedPath = manager.getSelectedPath();
      // if (selectedPath.length > 0 && selectedPath[selectedPath.length - 1] != menu.getPopupMenu()) {
      //   if (menu.isTopLevelMenu() || menu.getDelay() == 0) {
      //     MenuElement[] newPath = new MenuElement[selectedPath.length + 1];
      //     System.arraycopy(selectedPath, 0, newPath, 0, selectedPath.length);
      //     newPath[selectedPath.length] = menu.getPopupMenu();
      //     MenuSelectionManager.defaultManager().setSelectedPath(newPath);
      //   } else {
      //     setupPostTimer(menu);
      //   }
      // }
    }

    // @Override public void mouseReleased(MouseEvent e) {
    //   JMenu menu = (JMenu) menuItem;
    //   if (!menu.isEnabled()) {
    //     return;
    //   }
    //   MenuSelectionManager manager = MenuSelectionManager.defaultManager();
    //   manager.processMouseEvent(e);
    //   if (!e.isConsumed()) {
    //     manager.clearSelectedPath();
    //   }
    // }

    // @Override public void mouseEntered(MouseEvent e) {
    //   MenuSelectionManager manager = MenuSelectionManager.defaultManager();
    //   int modifiers = e.getModifiersEx();
    //   if ((modifiers & InputEvent.BUTTON1_DOWN_MASK) != 0) {
    //     MenuSelectionManager.defaultManager().processMouseEvent(e);
    //   } else {
    //     manager.setSelectedPath(getPath());
    //   }
    // }

    // @Override public void mouseExited(MouseEvent e) {
    //   MenuSelectionManager manager = MenuSelectionManager.defaultManager();
    //   int modifiers = e.getModifiersEx();
    //   if ((modifiers & InputEvent.BUTTON1_DOWN_MASK) != 0) {
    //     MenuSelectionManager.defaultManager().processMouseEvent(e);
    //   } else {
    //     MenuElement[] path = manager.getSelectedPath();
    //     if (path.length > 1 && path[path.length - 1] == menuItem) {
    //       MenuElement[] newPath = new MenuElement[path.length - 1];
    //       System.arraycopy(path, 0, newPath, 0, path.length - 1);
    //       manager.setSelectedPath(newPath);
    //     }
    //   }
    // }

    // @Override public void mouseDragged(MouseEvent e) {
    //   MenuSelectionManager.defaultManager().processMouseEvent(e);
    // }
  };
}
 
Example 4
Source Project: java-swing-tips   Source File: MainPanel.java    License: MIT License 4 votes vote down vote up
@Override protected MouseInputListener createMouseInputListener(JComponent c) {
  return new BasicMenuItemUI.MouseInputHandler() {
    @Override public void mouseReleased(MouseEvent e) {
      if (!menuItem.isEnabled() || SwingUtilities.isRightMouseButton(e)) {
        return;
      }
      super.mouseReleased(e);
      // MenuSelectionManager manager = MenuSelectionManager.defaultManager();
      // Point p = e.getPoint();
      // if (p.x >= 0 && p.x < menuItem.getWidth() && p.y >= 0 && p.y < menuItem.getHeight()) {
      //   doClick(manager);
      // } else {
      //   manager.processMouseEvent(e);
      // }
    }

    // @Override public void mouseEntered(MouseEvent e) {
    //   MenuSelectionManager manager = MenuSelectionManager.defaultManager();
    //   int modifiers = e.getModifiersEx();
    //   if ((modifiers & InputEvent.BUTTON1_DOWN_MASK) != 0) {
    //     MenuSelectionManager.defaultManager().processMouseEvent(e);
    //   } else {
    //     manager.setSelectedPath(getPath());
    //   }
    // }

    // @Override public void mouseExited(MouseEvent e) {
    //   MenuSelectionManager manager = MenuSelectionManager.defaultManager();
    //   int modifiers = e.getModifiersEx();
    //   if ((modifiers & InputEvent.BUTTON1_DOWN_MASK) != 0) {
    //     MenuSelectionManager.defaultManager().processMouseEvent(e);
    //   } else {
    //     MenuElement[] path = manager.getSelectedPath();
    //     if (path.length > 1 && path[path.length - 1] == menuItem) {
    //       MenuElement[] newPath = new MenuElement[path.length - 1];
    //       System.arraycopy(path, 0, newPath, 0, path.length - 1);
    //       manager.setSelectedPath(newPath);
    //     }
    //   }
    // }

    // @Override public void mouseDragged(MouseEvent e) {
    //   MenuSelectionManager.defaultManager().processMouseEvent(e);
    // }
  };
}
 
Example 5
Source Project: consulo   Source File: GtkPaintingUtil.java    License: Apache License 2.0 4 votes vote down vote up
public static Color getForeground(final BasicMenuItemUI ui, final JMenuItem menuItem) {
  final SynthContext context = getSynthContext(ui, menuItem);
  return context.getStyle().getColor(context, ColorType.TEXT_FOREGROUND);
}
 
Example 6
Source Project: consulo   Source File: GtkMenuItemUI.java    License: Apache License 2.0 4 votes vote down vote up
public static boolean isUiAcceptable(final MenuItemUI ui) {
  return ui instanceof BasicMenuItemUI && GtkPaintingUtil.isSynthUI(ui);
}