void (final @NotNull Crumb<? extends T> c, final int modifiers) { final T selectedElement = c.getItem(); final Set<BreadcrumbsItem> items = new HashSet<>(); boolean light = false; for (final Crumb each : myCrumbs) { final BreadcrumbsItem item = each.getItem(); if (item != null && items.contains(item)) { light = false; } each.setLight(light); if (item != null && !light) { items.add(item); } if (selectedElement == item) { each.setSelected(true); light = true; } else { each.setSelected(false); } } fireItemSelected(selectedElement, modifiers); repaint(); }