diff --git a/project_model/META-INF/plugin.xml b/project_model/META-INF/plugin.xml index fe948d7a2..135be9e00 100644 --- a/project_model/META-INF/plugin.xml +++ b/project_model/META-INF/plugin.xml @@ -29,6 +29,10 @@ description="Illustrates how to get source roots"> + + + diff --git a/project_model/src/com/intellij/plugins/project/model/ProjectSdkAction.java b/project_model/src/com/intellij/plugins/project/model/ProjectSdkAction.java new file mode 100644 index 000000000..b4c416771 --- /dev/null +++ b/project_model/src/com/intellij/plugins/project/model/ProjectSdkAction.java @@ -0,0 +1,33 @@ +package com.intellij.plugins.project.model; + +import com.intellij.openapi.actionSystem.AnAction; +import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.roots.ProjectRootManager; +import com.intellij.openapi.ui.Messages; + +/** + * @author Anna Bulenkova + */ +public class ProjectSdkAction extends AnAction { + @Override + public void actionPerformed(final AnActionEvent e) { + Project project = e.getProject(); + if (project != null) { + String projectSDKName = ProjectRootManager.getInstance(project).getProjectSdkName(); + String newProjectSdkName = "New Sdk Name"; + ProjectRootManager.getInstance(project).setProjectSdkName(newProjectSdkName); + Messages.showInfoMessage(projectSDKName + " has changed to " + newProjectSdkName, "Project Sdk Info"); + } + } + + @Override + public void update(final AnActionEvent e) { + Project project = e.getProject(); + if (project != null) { + Sdk sdk = ProjectRootManager.getInstance(project).getProjectSdk(); + e.getPresentation().setEnabledAndVisible(sdk != null); + } + } +}