View Javadoc
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  }