1009 // 1010 // MouseInputListener 1011 // 1012 public void mouseClicked(MouseEvent e) {} 1013 public void mousePressed(MouseEvent e) { 1014 } 1015 public void mouseReleased(MouseEvent e) { 1016 if (!menuItem.isEnabled()) { 1017 return; 1018 } 1019 MenuSelectionManager manager = 1020 MenuSelectionManager.defaultManager(); 1021 Point p = e.getPoint(); 1022 if(p.x >= 0 && p.x < menuItem.getWidth() && 1023 p.y >= 0 && p.y < menuItem.getHeight()) { 1024 doClick(manager); 1025 } else { 1026 manager.processMouseEvent(e); 1027 } 1028 } 1029 public void mouseEntered(MouseEvent e) { 1030 MenuSelectionManager manager = MenuSelectionManager.defaultManager(); 1031 int modifiers = e.getModifiers(); 1032 // 4188027: drag enter/exit added in JDK 1.1.7A, JDK1.2 1033 if ((modifiers & (InputEvent.BUTTON1_MASK | 1034 InputEvent.BUTTON2_MASK | InputEvent.BUTTON3_MASK)) !=0 ) { 1035 MenuSelectionManager.defaultManager().processMouseEvent(e); 1036 } else { 1037 manager.setSelectedPath(getPath()); 1038 } 1039 } 1040 public void mouseExited(MouseEvent e) { 1041 MenuSelectionManager manager = MenuSelectionManager.defaultManager(); 1042 1043 int modifiers = e.getModifiers(); 1044 // 4188027: drag enter/exit added in JDK 1.1.7A, JDK1.2 1045 if ((modifiers & (InputEvent.BUTTON1_MASK | 1046 InputEvent.BUTTON2_MASK | InputEvent.BUTTON3_MASK)) !=0 ) { 1047 MenuSelectionManager.defaultManager().processMouseEvent(e); 1048 } else { 1049 1050 MenuElement path[] = manager.getSelectedPath(); 1051 if (path.length > 1 && path[path.length-1] == menuItem) { 1052 MenuElement newPath[] = new MenuElement[path.length-1]; 1053 int i,c; 1054 for(i=0,c=path.length-1;i<c;i++) 1055 newPath[i] = path[i]; 1056 manager.setSelectedPath(newPath); 1057 } 1058 } 1059 } | 1009 // 1010 // MouseInputListener 1011 // 1012 public void mouseClicked(MouseEvent e) {} 1013 public void mousePressed(MouseEvent e) { 1014 } 1015 public void mouseReleased(MouseEvent e) { 1016 if (!menuItem.isEnabled()) { 1017 return; 1018 } 1019 MenuSelectionManager manager = 1020 MenuSelectionManager.defaultManager(); 1021 Point p = e.getPoint(); 1022 if(p.x >= 0 && p.x < menuItem.getWidth() && 1023 p.y >= 0 && p.y < menuItem.getHeight()) { 1024 doClick(manager); 1025 } else { 1026 manager.processMouseEvent(e); 1027 } 1028 } 1029 @SuppressWarnings("deprecation") 1030 public void mouseEntered(MouseEvent e) { 1031 MenuSelectionManager manager = MenuSelectionManager.defaultManager(); 1032 int modifiers = e.getModifiers(); 1033 // 4188027: drag enter/exit added in JDK 1.1.7A, JDK1.2 1034 if ((modifiers & (InputEvent.BUTTON1_MASK | 1035 InputEvent.BUTTON2_MASK | InputEvent.BUTTON3_MASK)) !=0 ) { 1036 MenuSelectionManager.defaultManager().processMouseEvent(e); 1037 } else { 1038 manager.setSelectedPath(getPath()); 1039 } 1040 } 1041 @SuppressWarnings("deprecation") 1042 public void mouseExited(MouseEvent e) { 1043 MenuSelectionManager manager = MenuSelectionManager.defaultManager(); 1044 1045 int modifiers = e.getModifiers(); 1046 // 4188027: drag enter/exit added in JDK 1.1.7A, JDK1.2 1047 if ((modifiers & (InputEvent.BUTTON1_MASK | 1048 InputEvent.BUTTON2_MASK | InputEvent.BUTTON3_MASK)) !=0 ) { 1049 MenuSelectionManager.defaultManager().processMouseEvent(e); 1050 } else { 1051 1052 MenuElement path[] = manager.getSelectedPath(); 1053 if (path.length > 1 && path[path.length-1] == menuItem) { 1054 MenuElement newPath[] = new MenuElement[path.length-1]; 1055 int i,c; 1056 for(i=0,c=path.length-1;i<c;i++) 1057 newPath[i] = path[i]; 1058 manager.setSelectedPath(newPath); 1059 } 1060 } 1061 } |