package jetbrains.mps.vcs.annotate; /*Generated by MPS */ import com.intellij.openapi.actionSystem.ToggleAction; import java.util.Map; import jetbrains.mps.internal.collections.runtime.MapSequence; import java.util.HashMap; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.ide.util.PropertiesComponent; /*package*/ class ViewAction extends ToggleAction { public static String SHORTEN_NAMES = "annotate.show.short.names"; public static String COLORS = "vcs.show.colored.annotations"; private static Map<String, String> KEYS_TO_TITLES = MapSequence.<String, String>fromMapAndKeysArray(new HashMap<String, String>(), SHORTEN_NAMES, COLORS).withValues("Short names", "Colors"); private AnnotationColumn myColumn; private String myKey; public ViewAction(AnnotationColumn column, String key) { super(MapSequence.fromMap(KEYS_TO_TITLES).get(key)); myKey = key; myColumn = column; } @Override public boolean isSelected(AnActionEvent event) { return isSet(myKey); } @Override public void setSelected(AnActionEvent event, boolean selected) { PropertiesComponent.getInstance().setValue(myKey, String.valueOf(selected)); myColumn.invalidateLayout(); } public static boolean isSet(String key) { return PropertiesComponent.getInstance().getBoolean(key, true); } }