diff --git a/platform/tasks-platform-impl/src/com/intellij/tasks/impl/TaskManagerImpl.java b/platform/tasks-platform-impl/src/com/intellij/tasks/impl/TaskManagerImpl.java index 9d2684f5a52d..2741db9b6674 100644 --- a/platform/tasks-platform-impl/src/com/intellij/tasks/impl/TaskManagerImpl.java +++ b/platform/tasks-platform-impl/src/com/intellij/tasks/impl/TaskManagerImpl.java @@ -903,7 +903,7 @@ public class TaskManagerImpl extends TaskManager implements ProjectComponent, Pe if (associatedTask != null) { associatedTask.removeChangelist(new ChangeListInfo(changeList)); } - changeList.setComment(comment); + myChangeListManager.editComment(name, comment); } task.addChangelist(new ChangeListInfo(changeList)); myChangeListManager.setDefaultChangeList(changeList); diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/LocalChangeList.java b/platform/vcs-api/src/com/intellij/openapi/vcs/changes/LocalChangeList.java index 5c201a93fe2b..b80ebe4209b6 100644 --- a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/LocalChangeList.java +++ b/platform/vcs-api/src/com/intellij/openapi/vcs/changes/LocalChangeList.java @@ -50,19 +50,13 @@ public abstract class LocalChangeList implements Cloneable, ChangeList { @NotNull public abstract String getName(); - public abstract void setName(@NotNull String name); - @Nullable public abstract String getComment(); - public abstract void setComment(@Nullable String comment); - public abstract boolean isDefault(); public abstract boolean isReadOnly(); - public abstract void setReadOnly(boolean isReadOnly); - /** * Get additional data associated with this changelist. */ @@ -74,4 +68,23 @@ public abstract class LocalChangeList implements Cloneable, ChangeList { public boolean hasDefaultName() { return DEFAULT_NAME.equals(getName()); } + + + /** + * Use {@link ChangeListManager#editName} + */ + @Deprecated + public abstract void setName(@NotNull String name); + + /** + * Use {@link ChangeListManager#editComment} + */ + @Deprecated + public abstract void setComment(@Nullable String comment); + + /** + * Use {@link ChangeListManager#setReadOnly} + */ + @Deprecated + public abstract void setReadOnly(boolean isReadOnly); } diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerSerialization.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerSerialization.java index cf848fb40975..c9ab6a3aba91 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerSerialization.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerSerialization.java @@ -142,7 +142,7 @@ class ChangeListManagerSerialization { String comment = listNode.getAttributeValue(ATT_COMMENT); LocalChangeListImpl list = LocalChangeListImpl.createEmptyChangeListImpl(project, name, id); - list.setComment(comment); + list.setCommentImpl(comment); for (Element changeNode : listNode.getChildren(NODE_CHANGE)) { list.addChange(readChange(changeNode)); @@ -152,7 +152,7 @@ class ChangeListManagerSerialization { list.setDefault(true); } if (ATT_VALUE_TRUE.equals(listNode.getAttributeValue(ATT_READONLY))) { - list.setReadOnly(true); + list.setReadOnlyImpl(true); } return list; diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java index a8ac25826e5d..eea714c2b6c0 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java @@ -186,9 +186,9 @@ public class ChangeListWorker { } public boolean setReadOnly(String name, boolean value) { - final LocalChangeList list = myMap.get(name); + final LocalChangeListImpl list = myMap.get(name); if (list != null) { - list.setReadOnly(value); + list.setReadOnlyImpl(value); } return list != null; } @@ -207,7 +207,7 @@ public class ChangeListWorker { } LocalChangeListImpl newList = LocalChangeListImpl.createEmptyChangeListImpl(myProject, name, null); - newList.setComment(description); + newList.setCommentImpl(description); newList.setData(data); myMap.put(name, newList); @@ -313,7 +313,7 @@ public class ChangeListWorker { final LocalChangeListImpl list = myMap.get(fromName); if (list == null || list.isReadOnly()) return false; - list.setName(toName); + list.setNameImpl(toName); myMap.remove(fromName); myMap.put(toName, list); @@ -327,7 +327,7 @@ public class ChangeListWorker { final String oldComment = list.getComment(); if (!Comparing.equal(oldComment, newComment)) { - list.setComment(newComment); + list.setCommentImpl(newComment); } return oldComment; } diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/LocalChangeListImpl.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/LocalChangeListImpl.java index 47aaf163a851..c6087c269c4e 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/LocalChangeListImpl.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/LocalChangeListImpl.java @@ -77,8 +77,7 @@ public class LocalChangeListImpl extends LocalChangeList { return myName; } - @Override - public void setName(@NotNull String name) { + public void setNameImpl(@NotNull String name) { myName = validateName(name); } @@ -96,8 +95,7 @@ public class LocalChangeListImpl extends LocalChangeList { return myComment; } - @Override - public void setComment(@Nullable String comment) { + public void setCommentImpl(@Nullable String comment) { myComment = comment != null ? comment : ""; } @@ -115,8 +113,7 @@ public class LocalChangeListImpl extends LocalChangeList { return myIsReadOnly; } - @Override - public void setReadOnly(final boolean isReadOnly) { + public void setReadOnlyImpl(final boolean isReadOnly) { myIsReadOnly = isReadOnly; } @@ -166,4 +163,20 @@ public class LocalChangeListImpl extends LocalChangeList { public LocalChangeListImpl copy() { return new LocalChangeListImpl(this); } + + + @Override + public void setName(@NotNull String name) { + ChangeListManager.getInstance(myProject).editName(myName, name); + } + + @Override + public void setComment(@Nullable String comment) { + ChangeListManager.getInstance(myProject).editComment(myName, comment); + } + + @Override + public void setReadOnly(boolean isReadOnly) { + ChangeListManager.getInstance(myProject).setReadOnly(myName, isReadOnly); + } } diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/ChangeListChooserPanel.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/ChangeListChooserPanel.java index a39e1721ed02..22258b8180d7 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/ChangeListChooserPanel.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/ChangeListChooserPanel.java @@ -182,7 +182,7 @@ public class ChangeListChooserPanel extends JPanel { } else { //update description if changed - localChangeList.setComment(myListPanel.getDescription()); + manager.editComment(changeListName, myListPanel.getDescription()); } rememberSettings(project, localChangeList.isDefault(), myListPanel.getMakeActiveCheckBox().isSelected()); if (myListPanel.getMakeActiveCheckBox().isSelected()) { diff --git a/plugins/hg4idea/testSrc/org/zmlx/hg4idea/test/HgTestChangeListManager.java b/plugins/hg4idea/testSrc/org/zmlx/hg4idea/test/HgTestChangeListManager.java index 6b9c9db99854..9ed538b8e82c 100644 --- a/plugins/hg4idea/testSrc/org/zmlx/hg4idea/test/HgTestChangeListManager.java +++ b/plugins/hg4idea/testSrc/org/zmlx/hg4idea/test/HgTestChangeListManager.java @@ -86,7 +86,7 @@ public class HgTestChangeListManager { } final LocalChangeList list = peer.getDefaultChangeList(); assertNotNull(list); - list.setComment("A comment to a commit"); + peer.editComment(list.getName(), "A comment to a commit"); UIUtil.invokeAndWaitIfNeeded((Runnable)() -> Assert.assertTrue(peer.commitChangesSynchronouslyWithResult(list, changes))); ensureUpToDate(); }