public String toString() { return getName(); }
public void actionPerformed(ActionEvent e) { doAction(); }
public String getName() { return (String) getValue(NAME); }
public void setName(String name) { putValue(NAME, name); }
public int hashCode() { return toString().hashCode(); }
public CajunAction(String name, Icon icon, String tooltip) { super(name, icon); setTooltip(tooltip); }
private void initialize() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(new BorderLayout()); DefaultFlatGraphView view = new DefaultFlatGraphView(graph); getContentPane().add(view, BorderLayout.CENTER); graph.getNodeContextMenu().add(new CajunAction("Test #1")); graph.getNodeContextMenu().add(new CajunAction("Test #2")); JPanel buttonsPanel = new JPanel(); buttonsPanel.add(new JButton(new AbstractAction(" Close ") { public void actionPerformed(ActionEvent e) { MainFrame.this.dispose(); } })); pack(); Dimension d = new Dimension(800, 600); setPreferredSize(d); setSize(d); setLocation(100, 50); setVisible(true); }
public void setTooltip(String tooltip) { putValue(SHORT_DESCRIPTION, tooltip); }
public boolean equals(Object o) { return toString().equals(o.toString()); }
public String getTooltip() { return (String) getValue(SHORT_DESCRIPTION); }
public void setIcon(Icon icon) { putValue(SMALL_ICON, icon); }
/** * Sets the expansion menu options enabled/disabled flag based on the current state of the * node. If the node has already been expanded, everything is disabled. Otherwise, all the * non-filtered arc types are enabled. * @param node */ private void initNodeActionConditions(GraphNode node) { if (model.isExpanded(node)) { expandAction.setEnabled(false); for (Action action : expandBasedOnActions) { action.setEnabled(false); } } else { expandAction.setEnabled(true); for (Action action : expandBasedOnActions) { if(graph.getFilterManager().isArcTypeVisible(((CajunAction)action).getName())) { action.setEnabled(true); } else { action.setEnabled(false); } } } }
public Icon getIcon() { return (Icon) getValue(SMALL_ICON); }