boolean () { PsiElement element = mySmartPointer.getElement(); if (element == null) return true; Icon icon = getIcon(element); Color color = null; if (isMarkModified() ){ VirtualFile virtualFile = PsiUtilCore.getVirtualFile(element); if (virtualFile != null) { color = FileStatusManager.getInstance(myProject).getStatus(virtualFile).getColor(); } } if (CopyPasteManager.getInstance().isCutElement(element)) { color = CopyPasteManager.CUT_COLOR; } boolean changes = !Comparing.equal(icon, getIcon()) || !Comparing.equal(color, myColor); setIcon(icon); myColor = color; return changes; }