import org.eclipse.ui.handlers.HandlerUtil;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
+import eu.etaxonomy.cdm.model.description.DescriptiveDataSet;
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
if(editorAreaPartStack!=null){
editorAreaPartStack.getChildren().add(part);
}
+
return partService.showPart(part, PartState.ACTIVATE);
+
}
public static MPart showPart(String partId, EModelService modelService, EPartService partService){
TaxonNameEditorE4 editor = (TaxonNameEditorE4) part.getObject();
editor.init(input);
- MPart part1 = partService.findPart(AppModelId.PARTDESCRIPTOR_EU_ETAXONOMY_TAXEDITOR_EDITOR_VIEW_DESCRIPTIVE_E4_FACTUALDATAPARTE4);
+
if (factsVisible){
showFacts(modelService, partService);
factsVisible = false;
}
- part1 = partService.findPart(AppModelId.PARTDESCRIPTOR_EU_ETAXONOMY_TAXEDITOR_EDITOR_VIEW_MEDIA_E4_MEDIAVIEWPARTE4);
+
if (mediaVisible){
showMedia(modelService, partService);
mediaVisible = false;
}
-// String partIdFactualData = AppModelId.PARTDESCRIPTOR_EU_ETAXONOMY_TAXEDITOR_EDITOR_VIEW_DESCRIPTIVE_E4_FACTUALDATAPARTE4;
-// String partIdMedia = AppModelId.PARTDESCRIPTOR_EU_ETAXONOMY_TAXEDITOR_EDITOR_VIEW_MEDIA_E4_MEDIAVIEWPARTE4;
-// showPart(partIdMedia, modelService, partService);
-// showPart(partIdFactualData, modelService, partService);
+
editor.setFocus();
}
return true;
}
- public static boolean forceUserSaveE4Editor(TaxonNameEditorE4 editor, Shell shell) {
+ public static boolean forceUserSaveE4Editor(IE4SavablePart editor, Shell shell) {
if (editor.isDirty()) {
boolean doSave = MessageDialog
}
+ public static void closeObsoleteDescriptiveDatasetEditor(UUID datasetUuid, EPartService partService){
+
+ Collection<MPart> parts = partService.getParts();
+ for (MPart part : parts) {
+ Object object = part.getObject();
+ if(object instanceof DescriptiveDataSetEditor){
+ DescriptiveDataSetEditor editor = (DescriptiveDataSetEditor)object;
+ DescriptiveDataSet descDataSet = editor.getDescriptiveDataSet();
+ if(descDataSet.getUuid().equals(datasetUuid)){
+ if (part.isDirty()){
+ forceUserSaveE4Editor(editor, getShell());
+ }
+ partService.hidePart(part);
+ }
+
+ }
+ }
+ }
+
+
public static void closePart(String partID, EPartService partService){
Collection<MPart> parts = partService.getParts();