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