@Override protected void onNodeStateChanged(final CheckedTreeNode node) { final Object descriptor = node.getUserObject(); final Breakpoint breakpoint; if (descriptor instanceof BreakpointDescriptor) { breakpoint = ((BreakpointDescriptor) descriptor).getBreakpoint(); if (myBreakpointManager.findMasterBreakpoint(breakpoint) != null) { return; } } else { breakpoint = null; } if (breakpoint != null) { myBreakpointManager.setBreakpointEnabled(breakpoint, node.isChecked()); } }
public void customizeRenderer( JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { if (value instanceof CheckedTreeNode) { final CheckedTreeNode node = (CheckedTreeNode) value; final TreeDescriptor descriptor = getDescriptor(node); descriptor.customizeCellRenderer( getTextRenderer(), node, selected, node.isChecked(), expanded, leaf, hasFocus); if (descriptor instanceof BreakpointDescriptor) { myCheckbox.setEnabled(node.isEnabled() && !((BreakpointDescriptor) descriptor).isSlave()); } } }