/** * Enables of disables the action based on system state. * * @param ev Triggering event - not used. */ public void menuSelected(MenuEvent e) { enableForNetworkAndView(); JCheckBoxMenuItem item = (JCheckBoxMenuItem)Cytoscape.getDesktop().getCyMenus().getLayoutMenu().getItem(menuIndex); if ( manualLayoutPanel.getSelectedIndex() != menuIndex || manualLayoutPanel.getState() == CytoPanelState.HIDE ) item.setState(false); else item.setState(true); CytoPanelState parentState = Cytoscape.getDesktop().getCytoPanel(SwingConstants.WEST).getState(); if ( parentState == CytoPanelState.HIDE ) { setEnabled(false); } else { setEnabled(true); } }