diff --git a/plugins/tasks/tasks-api/src/com/intellij/tasks/LocalTask.java b/plugins/tasks/tasks-api/src/com/intellij/tasks/LocalTask.java index ce35feaf4c1d..d4361ea25e0f 100644 --- a/plugins/tasks/tasks-api/src/com/intellij/tasks/LocalTask.java +++ b/plugins/tasks/tasks-api/src/com/intellij/tasks/LocalTask.java @@ -44,4 +44,6 @@ public abstract class LocalTask extends Task { public boolean isDefault() { return false; } + + public abstract void setAssociatedChangelistId(String associatedChangelistId); } diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/actions/CreateChangelistAction.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/actions/CreateChangelistAction.java index e72679b48e42..c72a4d9d9658 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/actions/CreateChangelistAction.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/actions/CreateChangelistAction.java @@ -19,8 +19,8 @@ package com.intellij.tasks.actions; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.Presentation; import com.intellij.openapi.ui.Messages; +import com.intellij.tasks.LocalTask; import com.intellij.tasks.TaskManager; -import com.intellij.tasks.Task; import com.intellij.tasks.impl.TaskManagerImpl; import com.intellij.tasks.impl.TaskUtil; @@ -45,7 +45,7 @@ public class CreateChangelistAction extends BaseTaskAction { @Override public void actionPerformed(AnActionEvent e) { - Task activeTask = getActiveTask(e); + LocalTask activeTask = getActiveTask(e); String name = Messages.showInputDialog(getProject(e), "Changelist name:", "Create Changelist", null, TaskUtil.getChangeListName(activeTask), null); if (name != null) { TaskManagerImpl manager = (TaskManagerImpl)getTaskManager(e); diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/LocalTaskImpl.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/LocalTaskImpl.java index 712f66923670..67e4d8ed66a1 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/LocalTaskImpl.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/LocalTaskImpl.java @@ -196,6 +196,7 @@ public class LocalTaskImpl extends LocalTask { myChangeLists = changeLists; } + @Override public void setAssociatedChangelistId(String associatedChangelistId) { myAssociatedChangelistId = associatedChangelistId; } diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/TaskManagerImpl.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/TaskManagerImpl.java index 2c9edabd7362..d88957dfe397 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/TaskManagerImpl.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/impl/TaskManagerImpl.java @@ -310,7 +310,7 @@ public class TaskManagerImpl extends TaskManager implements ProjectComponent, Pe } myContextManager.restoreContext(origin); - final Task task = doActivate(origin, true); + final LocalTask task = doActivate(origin, true); if (isVcsEnabled()) { List changeLists = getOpenChangelists(task); @@ -340,17 +340,18 @@ public class TaskManagerImpl extends TaskManager implements ProjectComponent, Pe myActiveTask.setUpdated(new Date()); } - public void createChangeList(Task task, String name) { + public void createChangeList(LocalTask task, String name) { String comment = TaskUtil.getChangeListComment(this, task); createChangeList(task, name, comment); } - public void createChangeList(Task task, String name, String comment) { + public void createChangeList(LocalTask task, String name, String comment) { LocalChangeList changeList = myChangeListManager.findChangeList(name); if (changeList == null) { changeList = myChangeListManager.addChangeList(name, comment); } myChangeListManager.setDefaultChangeList(changeList); + task.setAssociatedChangelistId(changeList.getId()); getOpenChangelists(task).add(new ChangeListInfo(changeList)); }