delete confirmation dialog [message #900025] |
Fri, 03 August 2012 09:42  |
Eclipse User |
|
|
|
Hi,
I have implemented a Custom Node Collapse Feature. When a particular node is collapsed, it will delete set of nodes and links from a diagram. As you can see in the diagram below, if a node "A" is collapsed, split node (upper circle in the diagram), node "B", and join node (lower circle in the diagram) shall be deleted.


There is no problem in deleting. But I get delete confirm dialog as many times as the total number of Nodes and Links that I am deleting!!!
The following is my code in the Custom feature. Is there any (better) way for showing this "delete confirmation dialog" only once while deleting all these nodes and links??
// delete links
for (int i = 0; i < linkss.size(); i++) {
Link link = (Link) linkss.get(i);
PictogramElement pe = TaskUtils.getLinkPECompareByGuid(plinks, link); //getPEforLink(plinks, link);
if(pe != null){
DeleteContext delContext = new DeleteContext(pe); //TaskUtils.getPEforLink(plinks, link));
IDeleteFeature delFeature = featureProvider.getDeleteFeature(delContext);
if(delFeature.canDelete(delContext)){
delFeature.delete(delContext);
}
}
// delete tasks
for (int i = 0; i < tasks.size(); i++) {
DeleteContext delContext = new DeleteContext(TaskUtils.getTaskPECompareByGuid(plinks, (Task)tasks.get(i)));
IDeleteFeature delFeature = featureProvider.getDeleteFeature(delContext);
if(delFeature.canDelete(delContext)){
delFeature.delete(delContext);
}
Best regards
Surya
[Updated on: Fri, 03 August 2012 09:43] by Moderator
|
|
|
|
|
Re: delete confirmation dialog [message #1456516 is a reply to message #900708] |
Thu, 30 October 2014 08:46  |
Eclipse User |
|
|
|
As in the previous reply, this piece of code does what you asked:
@Override
public void delete(IDeleteContext context) {
Validate.notNull(context);
Validate.isInstanceOf(IDeleteContext.class, context);
((DeleteContext) context).setMultiDeleteInfo(new MultiDeleteInfo(false, false, 0));
[...]
Simone
|
|
|
Powered by
FUDForum. Page generated in 0.14584 seconds