From 727ab272d5776156994badbf1cb01b7a6aaca4c5 Mon Sep 17 00:00:00 2001
From: Patrick Plitzner
Date: Wed, 8 May 2019 13:40:03 +0200
Subject: [PATCH] ref #8263 Only refresh edited terms when saving
---
.../editor/definedterm/e4/DefinedTermEditorE4.java | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java
index 142a3f6a8..07e7b7798 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java
@@ -170,16 +170,19 @@ IPartContentHasDetails, IPartContentHasSupplementalData, IE4SavablePart, IContex
getConversationHolder().commit();
for(TermBase term:changedTerms){
if(term.isInstanceOf(DefinedTermBase.class)){
- CdmStore.getService(ITermService.class).merge((DefinedTermBase) term);
+ DefinedTermBase definedTermBase = (DefinedTermBase) term;
+ CdmStore.getService(ITermService.class).merge(definedTermBase);
+ viewer.refresh(TermDto.fromTerm(definedTermBase));
}
else if(term.isInstanceOf(TermVocabulary.class)){
- CdmStore.getService(IVocabularyService.class).merge((TermVocabulary) term);
+ TermVocabulary voc = (TermVocabulary) term;
+ CdmStore.getService(IVocabularyService.class).merge(voc);
+ viewer.refresh(new TermVocabularyDto(voc.getUuid(), voc.getRepresentations(), voc.getTermType()));
}
}
setDirty(false);
input.initialiseVocabularies();
- viewer.refresh();
- changedTerms.clear();
+ changedTerms.clear();
EventUtility.postEvent(WorkbenchEventConstants.REFRESH_SUPPLEMENTAL, true);
}
--
2.34.1