package jetbrains.mps.vcs.annotate; /*Generated by MPS */ import jetbrains.mps.workbench.action.BaseGroup; import jetbrains.mps.internal.collections.runtime.Sequence; import com.intellij.openapi.actionSystem.ToggleAction; import com.intellij.openapi.actionSystem.AnActionEvent; /*package*/ class ViewActionGroup extends BaseGroup { public ViewActionGroup(AnnotationColumn annotationColumn, Iterable<AnnotationAspectSubcolumn> subcolumns) { super("View"); setPopup(true); for (AnnotationAspectSubcolumn subcolumn : Sequence.fromIterable(subcolumns)) { add(new ViewActionGroup.ShowHideSubcolumnAction(subcolumn)); } addSeparator(); add(new ViewAction(annotationColumn, ViewAction.SHORTEN_NAMES)); add(new ViewAction(annotationColumn, ViewAction.COLORS)); } private class ShowHideSubcolumnAction extends ToggleAction { private AnnotationAspectSubcolumn mySubcolumn; public ShowHideSubcolumnAction(AnnotationAspectSubcolumn subcolumn) { super(subcolumn.getId()); mySubcolumn = subcolumn; } @Override public void setSelected(AnActionEvent event, boolean selected) { mySubcolumn.setEnabled(selected); } @Override public boolean isSelected(AnActionEvent event) { return mySubcolumn.isEnabled(); } } }