1 package com.jsql.view.swing.util;
2
3 import javax.swing.*;
4 import java.awt.event.MouseEvent;
5
6 public class RadioItemPreventClose extends JRadioButtonMenuItem {
7 public RadioItemPreventClose(String text) {
8 super(text);
9 }
10 public RadioItemPreventClose(String text, boolean selected) {
11 super(text, selected);
12 }
13 public RadioItemPreventClose(String text, ImageIcon icon, boolean selected) {
14 super(text, icon, selected);
15 }
16 public RadioItemPreventClose(AbstractAction a) {
17 super(a);
18 }
19 @Override
20 protected void processMouseEvent(MouseEvent e) {
21 if (!RadioItemPreventClose.preventClose(e, this)) {
22 super.processMouseEvent(e);
23 }
24 }
25 public static boolean preventClose(MouseEvent e, JMenuItem m) {
26 if (e.getID() == MouseEvent.MOUSE_RELEASED && m.contains(e.getPoint())) {
27 m.doClick();
28 m.setArmed(true);
29 return true;
30 }
31 return false;
32 }
33 }