package jetbrains.mps.lang.structure.pluginSolution.plugin;

/*Generated by MPS */

import jetbrains.mps.plugins.applicationplugins.BaseApplicationPlugin;
import com.intellij.openapi.extensions.PluginId;
import org.jetbrains.annotations.NotNull;
import jetbrains.mps.ide.actions.NodeActions_ActionGroup;
import jetbrains.mps.ide.actions.ModelActions_ActionGroup;

public class PluginSolution_ApplicationPlugin extends BaseApplicationPlugin {
  private final PluginId myId = PluginId.getId("jetbrains.mps.lang.structure.pluginSolution");

  public PluginSolution_ApplicationPlugin() {
  }

  @NotNull
  public PluginId getId() {
    return myId;
  }

  public void createGroups() {
    // actions w/o parameters
    addAction(new CreateReferenceConcept_Action());
    addAction(new DropEnumMigrationAttribute_Action());
    addAction(new DropEnumPropertyMigrationAttribute_Action());
    addAction(new ShowDefaultHelp_Action());
    addAction(new ShowHelpForAspect_Action());
    addAction(new ShowHelpForNode_Action());
    addAction(new ShowHelpForRoot_Action());
    // groups
    addGroup(new ShowAsIntentions_LangStructure_ActionGroup(this));
    addGroup(new ShowHelp_ActionGroup(this));
    addGroup(new Structure_ActionGroup(this));
  }
  public void adjustRegularGroups() {
    insertGroupIntoAnother(Structure_ActionGroup.ID, NodeActions_ActionGroup.ID, NodeActions_ActionGroup.LABEL_ID_structure);
    insertGroupIntoAnother(Structure_ActionGroup.ID, "EditorPopup_ActionGroupstructure", null);
    insertGroupIntoAnother(ShowHelp_ActionGroup.ID, ModelActions_ActionGroup.ID, ModelActions_ActionGroup.LABEL_ID_showHelp);
    insertGroupIntoAnother(ShowHelp_ActionGroup.ID, Structure_ActionGroup.ID, Structure_ActionGroup.LABEL_ID_showHelp);
    insertGroupIntoAnother(ShowAsIntentions_LangStructure_ActionGroup.ID, "jetbrains.mps.ide.editor.actions.ActionsAsIntentions_ActionGroup", null);
  }
}
