void (@NotNull final AnActionEvent e) { final Project project = e.getProject(); final CommittedChangesBrowserUseCase useCase = e.getData(CommittedChangesBrowserUseCase.DATA_KEY); final Presentation presentation = e.getPresentation(); if ((project == null) || (myCheckUseCase) && ((useCase == null) || (! CommittedChangesBrowserUseCase.COMMITTED.equals(useCase)))) { presentation.setEnabledAndVisible(false); return; } presentation.setText(SvnBundle.messagePointer("action.Subversion.integrate.changes.actionname")); presentation.setDescription(SvnBundle.messagePointer("action.Subversion.integrate.changes.description")); final T checker = createChecker(); checker.execute(e); presentation.setVisible(true); presentation.setEnabled(checker.isValid()); if (presentation.isVisible() && presentation.isEnabled() && ProjectLevelVcsManager.getInstance(project).isBackgroundVcsOperationRunning()) { presentation.setEnabled(false); } updateWithChecker(e, checker); }