RadioItemNonClosing.java
package com.jsql.view.swing.util;
import javax.swing.*;
import java.awt.event.MouseEvent;
public class RadioItemNonClosing extends JRadioButtonMenuItem {
public RadioItemNonClosing(String text) {
super(text);
}
public RadioItemNonClosing(String text, boolean selected) {
super(text, selected);
}
public RadioItemNonClosing(String text, ImageIcon icon, boolean selected) {
super(text, icon, selected);
}
public RadioItemNonClosing(AbstractAction a) {
super(a);
}
@Override
protected void processMouseEvent(MouseEvent e) {
if (RadioItemNonClosing.shouldClose(e, this)) {
super.processMouseEvent(e);
}
}
public static boolean shouldClose(MouseEvent e, JMenuItem m) {
if (e.getID() == MouseEvent.MOUSE_RELEASED && m.contains(e.getPoint())) {
m.doClick();
m.setArmed(true);
return false;
}
return true;
}
}