JAL-3120 JAL-3130 can't read "java.specification.version" in JalviewJS
[jalview.git] / src / jalview / util / ShortcutKeyMaskExWrapper.java
1 package jalview.util;
2
3 import java.awt.event.MouseEvent;
4
5 public class ShortcutKeyMaskExWrapper
6 {
7
8   private static final Float specversion;
9
10   private static final float modern;
11
12   public static final int SHIFT_DOWN_MASK;
13
14   public static final int ALT_DOWN_MASK;
15
16   private static final ShortcutKeyMaskExWrapperI wrapper;
17
18   static
19   {
20     specversion = Platform.isJS() ? Float.valueOf(8)
21             : Float.parseFloat(
22                     System.getProperty("java.specification.version"));
23     modern = 11;
24
25     if (specversion >= modern)
26     {
27       wrapper = new jalview.util.ShortcutKeyMaskExWrapper11();
28       SHIFT_DOWN_MASK = jalview.util.ShortcutKeyMaskExWrapper11.SHIFT_DOWN_MASK;
29       ALT_DOWN_MASK = jalview.util.ShortcutKeyMaskExWrapper11.ALT_DOWN_MASK;
30     }
31     else
32     {
33       wrapper = new jalview.util.ShortcutKeyMaskExWrapper8();
34       SHIFT_DOWN_MASK = jalview.util.ShortcutKeyMaskExWrapper8.SHIFT_DOWN_MASK;
35       ALT_DOWN_MASK = jalview.util.ShortcutKeyMaskExWrapper8.ALT_DOWN_MASK;
36     }
37   }
38
39   public static int getMenuShortcutKeyMaskEx()
40   {
41     return wrapper.getMenuShortcutKeyMaskEx();
42   }
43
44   public static int getModifiersEx(MouseEvent e)
45   {
46     return wrapper.getModifiersEx(e);
47   }
48
49 }