6 |
6 |
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
7 |
7 |
* See LICENSE.TXT at the top of this package for the full license terms.
|
8 |
8 |
*/
|
9 |
|
|
10 |
9 |
package eu.etaxonomy.taxeditor.termtree.e4;
|
11 |
10 |
|
12 |
11 |
import java.util.ArrayList;
|
... | ... | |
82 |
81 |
import eu.etaxonomy.taxeditor.workbench.part.IE4ViewerPart;
|
83 |
82 |
|
84 |
83 |
/**
|
85 |
|
*
|
86 |
84 |
* @author pplitzner
|
87 |
85 |
* @date 06.06.2017
|
88 |
|
*
|
89 |
86 |
*/
|
90 |
87 |
public class TermTreeEditor<T extends DefinedTermBase>
|
91 |
88 |
implements ITermTreeEditor, ISelectionChangedListener,
|
... | ... | |
147 |
144 |
}
|
148 |
145 |
parent.setLayout(new FillLayout());
|
149 |
146 |
viewer = new TreeViewer(parent);
|
150 |
|
TermTreeContentProvider contentProvider = new TermTreeContentProvider();
|
|
147 |
TermTreeContentProvider<?> contentProvider = new TermTreeContentProvider<>();
|
151 |
148 |
|
152 |
149 |
viewer.setContentProvider(contentProvider);
|
153 |
150 |
viewer.setLabelProvider(new TermTreeLabelProvider());
|
... | ... | |
220 |
217 |
// AbstractUtility.executeOperation(operation, sync);
|
221 |
218 |
this.addOperation(operation);
|
222 |
219 |
}
|
223 |
|
|
224 |
220 |
}
|
225 |
221 |
|
226 |
222 |
public void copy(IStructuredSelection selection) {
|
... | ... | |
248 |
244 |
dirty.setDirty(false);
|
249 |
245 |
}
|
250 |
246 |
|
|
247 |
@Override
|
|
248 |
public boolean isDirty(){
|
|
249 |
return dirty.isDirty();
|
|
250 |
}
|
251 |
251 |
public void setDirty(boolean isDirty){
|
252 |
252 |
this.dirty.setDirty(isDirty);
|
253 |
253 |
}
|
... | ... | |
256 |
256 |
this.dirty.setDirty(true);
|
257 |
257 |
}
|
258 |
258 |
|
259 |
|
@Override
|
260 |
|
public boolean isDirty(){
|
261 |
|
return dirty.isDirty();
|
262 |
|
}
|
263 |
|
|
264 |
259 |
@Override
|
265 |
260 |
public void selectionChanged(SelectionChangedEvent event) {
|
266 |
261 |
//propagate selection
|
... | ... | |
311 |
306 |
}
|
312 |
307 |
|
313 |
308 |
// commit the conversation and start a new transaction immediately
|
314 |
|
Object[] expandedElements = this.viewer.getExpandedElements();
|
315 |
309 |
ISelection sel = this.viewer.getSelection();
|
316 |
310 |
conversation.commit(true);
|
317 |
311 |
if (createOperationList != null && !createOperationList.isEmpty()){
|
... | ... | |
350 |
344 |
updateTrees();
|
351 |
345 |
viewer.setInput(getTrees());
|
352 |
346 |
viewer.setExpandedElements(expandedElements);
|
353 |
|
|
354 |
347 |
}
|
355 |
348 |
|
356 |
349 |
@PreDestroy
|
... | ... | |
371 |
364 |
"term", //$NON-NLS-1$
|
372 |
365 |
"termTree", //$NON-NLS-1$
|
373 |
366 |
});
|
374 |
|
Map<Object, List<String>> propertyPathMap =
|
375 |
|
new HashMap<Object, List<String>>();
|
|
367 |
Map<Object, List<String>> propertyPathMap = new HashMap<>();
|
376 |
368 |
propertyPathMap.put(TermNode.class,propertyPaths);
|
377 |
369 |
return propertyPathMap;
|
378 |
370 |
}
|
... | ... | |
467 |
459 |
}
|
468 |
460 |
}
|
469 |
461 |
|
470 |
|
/**
|
471 |
|
* @param term
|
472 |
|
* @param treeUuid
|
473 |
|
*/
|
474 |
462 |
@Override
|
475 |
463 |
public boolean checkDuplicates(UUID termUuid, UUID treeUuid) {
|
476 |
464 |
TermTreeDto tree = this.getTreeDtoForUuid(treeUuid);
|
... | ... | |
497 |
485 |
addAllNodesToMap(tree.getRoot());
|
498 |
486 |
}
|
499 |
487 |
((TermTreeContentProvider<T>)viewer.getContentProvider()).setUuidTermMap(uuidTermMap);
|
500 |
|
// viewer.refresh();
|
501 |
|
|
502 |
488 |
}
|
503 |
489 |
|
504 |
490 |
public List<TermTreeDto> getTrees(){
|
... | ... | |
508 |
494 |
|
509 |
495 |
public void putTree(TermTreeDto tree){
|
510 |
496 |
trees.put(tree.getUuid(), tree);
|
511 |
|
|
512 |
497 |
}
|
513 |
498 |
|
514 |
499 |
public void removeTree(TermTreeDto tree){
|
515 |
500 |
trees.remove(tree.getUuid());
|
516 |
|
|
517 |
501 |
}
|
518 |
502 |
|
519 |
503 |
@Override
|
... | ... | |
547 |
531 |
if (uuid.equals(cdmbaseUuid)){
|
548 |
532 |
listToUpdate.add(uuidTermMap.get(uuid));
|
549 |
533 |
}
|
550 |
|
|
551 |
534 |
}
|
552 |
|
|
553 |
535 |
}
|
554 |
536 |
|
555 |
537 |
@Override
|
556 |
538 |
public TermType getTermType() {
|
557 |
539 |
return termType;
|
558 |
540 |
}
|
559 |
|
|
560 |
|
|
561 |
|
}
|
|
541 |
}
|
cleanup