public void actionPerformed(ActionEvent e) { ActionListener[] l = getAWTMenu().getActionListeners(); if (l != null && l.length > 0) { MenuItem i = getAWTMenu(); for (int idx = 0; idx < l.length; idx++) { ActionEvent ev = new ActionEvent(i, idx, e.getActionCommand()); l[idx].actionPerformed(ev); } } }
/** Returns, as an array of strings, a list of the LUTs in the Image/Lookup Tables menu. */ public static String[] getLuts() { ArrayList list = new ArrayList(); Hashtable commands = Menus.getCommands(); Menu lutsMenu = Menus.getImageJMenu("Image>Lookup Tables"); if (commands==null || lutsMenu==null) return new String[0]; for (int i=0; i<lutsMenu.getItemCount(); i++) { MenuItem menuItem = lutsMenu.getItem(i); if (menuItem.getActionListeners().length == 0) // separator? continue; String label = menuItem.getLabel(); if (label.equals("Invert LUT") || label.equals("Apply LUT")) continue; String command = (String)commands.get(label); if (command==null || command.startsWith("ij.plugin.LutLoader")) list.add(label); } return (String[])list.toArray(new String[list.size()]); }
public static String[] getSampleImageNames() { ArrayList list = new ArrayList(); Hashtable commands = Menus.getCommands(); Menu samplesMenu = Menus.getImageJMenu("File>Open Samples"); if (samplesMenu==null) return new String[0]; for (int i=0; i<samplesMenu.getItemCount(); i++) { MenuItem menuItem = samplesMenu.getItem(i); if (menuItem.getActionListeners().length == 0) continue; // separator? String label = menuItem.getLabel(); if (label.contains("Cache Sample Images")) continue; String command = (String)commands.get(label); if (command==null) continue; String[] items = command.split("\""); if (items.length!=3) continue; String name = items[1]; list.add(name); } return (String[])list.toArray(new String[list.size()]); }
/** Returns, as an array of strings, a list of the LUTs in the Image/Lookup Tables menu. */ public static String[] getLuts() { ArrayList list = new ArrayList(); Hashtable commands = Menus.getCommands(); Menu lutsMenu = Menus.getImageJMenu("Image>Lookup Tables"); if (commands==null || lutsMenu==null) return new String[0]; for (int i=0; i<lutsMenu.getItemCount(); i++) { MenuItem menuItem = lutsMenu.getItem(i); if (menuItem.getActionListeners().length == 0) // separator? continue; String label = menuItem.getLabel(); if (label.equals("Invert LUT") || label.equals("Apply LUT")) continue; String command = (String)commands.get(label); if (command==null || command.startsWith("ij.plugin.LutLoader")) list.add(label); } return (String[])list.toArray(new String[list.size()]); }
public static String[] getSampleImageNames() { ArrayList list = new ArrayList(); Hashtable commands = Menus.getCommands(); Menu samplesMenu = Menus.getImageJMenu("File>Open Samples"); if (samplesMenu==null) return new String[0]; for (int i=0; i<samplesMenu.getItemCount(); i++) { MenuItem menuItem = samplesMenu.getItem(i); if (menuItem.getActionListeners().length == 0) continue; // separator? String label = menuItem.getLabel(); if (label.contains("Cache Sample Images")) continue; String command = (String)commands.get(label); if (command==null) continue; String[] items = command.split("\""); if (items.length!=3) continue; String name = items[1]; list.add(name); } return (String[])list.toArray(new String[list.size()]); }
for (final ActionListener l : item.getActionListeners()) jitem.addActionListener(l);