diff --git a/astrid/plugin-src/com/todoroo/astrid/subtasks/NewOrderedListUpdater.java b/astrid/plugin-src/com/todoroo/astrid/subtasks/NewOrderedListUpdater.java index 65bbba5eb..6e0e211f0 100644 --- a/astrid/plugin-src/com/todoroo/astrid/subtasks/NewOrderedListUpdater.java +++ b/astrid/plugin-src/com/todoroo/astrid/subtasks/NewOrderedListUpdater.java @@ -2,6 +2,7 @@ package com.todoroo.astrid.subtasks; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import org.json.JSONArray; import org.json.JSONException; @@ -44,6 +45,21 @@ public abstract class NewOrderedListUpdater { treeRoot = buildTreeModel(getSerializedTree()); } + public Long[] getOrderedIds() { + ArrayList ids = new ArrayList(); + orderedIdHelper(treeRoot, ids); + return ids.toArray(new Long[ids.size()]); + } + + private void orderedIdHelper(Node node, List ids) { + if (node != treeRoot) + ids.add(node.taskId); + + for (Node child : node.children) { + orderedIdHelper(child, ids); + } + } + public void indent(long targetTaskId, int delta) { Node node = idToNode.get(targetTaskId); indentHelper(node, delta);