|
Lines 9-16
Link Here
|
| 9 |
package org.eclipse.mylar.internal.tasks.ui.workingset; |
9 |
package org.eclipse.mylar.internal.tasks.ui.workingset; |
| 10 |
|
10 |
|
| 11 |
import java.util.ArrayList; |
11 |
import java.util.ArrayList; |
|
|
12 |
import java.util.Arrays; |
| 12 |
import java.util.List; |
13 |
import java.util.List; |
| 13 |
|
14 |
|
|
|
15 |
import org.eclipse.core.runtime.IAdaptable; |
| 14 |
import org.eclipse.mylar.tasks.core.AbstractTaskContainer; |
16 |
import org.eclipse.mylar.tasks.core.AbstractTaskContainer; |
| 15 |
import org.eclipse.mylar.tasks.core.ITask; |
17 |
import org.eclipse.mylar.tasks.core.ITask; |
| 16 |
import org.eclipse.mylar.tasks.core.ITaskListChangeListener; |
18 |
import org.eclipse.mylar.tasks.core.ITaskListChangeListener; |
|
Lines 62-72
Link Here
|
| 62 |
} |
64 |
} |
| 63 |
|
65 |
|
| 64 |
public void containerDeleted(AbstractTaskContainer container) { |
66 |
public void containerDeleted(AbstractTaskContainer container) { |
| 65 |
// XXX remove container from working set |
67 |
synchronized (workingSets) { |
|
|
68 |
for (IWorkingSet workingSet : workingSets) { |
| 69 |
// TODO could filter by working set id |
| 70 |
ArrayList<IAdaptable> remove = new ArrayList<IAdaptable>(); |
| 71 |
for (IAdaptable adaptable : workingSet.getElements()) { |
| 72 |
if (adaptable instanceof AbstractTaskContainer |
| 73 |
&& ((AbstractTaskContainer) adaptable).getHandleIdentifier().equals( |
| 74 |
container.getHandleIdentifier())) { |
| 75 |
remove.add(adaptable); |
| 76 |
} |
| 77 |
} |
| 78 |
if(!remove.isEmpty()) { |
| 79 |
ArrayList<IAdaptable> elements = new ArrayList<IAdaptable>(Arrays.asList(workingSet.getElements())); |
| 80 |
elements.removeAll(remove); |
| 81 |
workingSet.setElements(elements.toArray(new IAdaptable[elements.size()])); |
| 82 |
} |
| 83 |
} |
| 84 |
} |
| 66 |
} |
85 |
} |
| 67 |
|
86 |
|
| 68 |
public void containerInfoChanged(AbstractTaskContainer container) { |
87 |
public void containerInfoChanged(AbstractTaskContainer container) { |
| 69 |
// XXX need to do anything? |
|
|
| 70 |
} |
88 |
} |
| 71 |
|
89 |
|
| 72 |
public void localInfoChanged(ITask task) { |
90 |
public void localInfoChanged(ITask task) { |