From b85b96a3fe6587341b32b869abf1ecf2d130f1d9 Mon Sep 17 00:00:00 2001
From: Patric Plitzner
Date: Tue, 21 Oct 2014 10:41:34 +0000
Subject: [PATCH] - extended DnaQuality details view - refactored DateElement
creation
---
.../taxeditor/ui/element/CdmFormFactory.java | 10 +++++
.../taxeditor/ui/mvc/element/DateElement.java | 2 +-
.../dna/DnaQualityDetailElement.java | 39 ++++++++++++-------
.../MediaSpecimenGeneralDetailElement.java | 9 +----
.../derivateSearch/DerivateLabelProvider.java | 16 +++-----
5 files changed, 42 insertions(+), 34 deletions(-)
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
index 96ce2035b..03f76ed7c 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
@@ -37,6 +37,7 @@ import org.eclipse.ui.forms.widgets.ExpandableComposite;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.Section;
import org.eclipse.ui.internal.forms.widgets.FormFonts;
+import org.joda.time.DateTime;
import org.joda.time.Partial;
import org.springframework.security.core.GrantedAuthority;
@@ -102,6 +103,7 @@ import eu.etaxonomy.taxeditor.model.MessagingUtils;
import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.MinMaxTextSection.UnitType;
+import eu.etaxonomy.taxeditor.ui.mvc.element.DateElement;
import eu.etaxonomy.taxeditor.ui.openurl.IOpenUrlEnabled;
import eu.etaxonomy.taxeditor.ui.openurl.OpenUrlSelectorElement;
import eu.etaxonomy.taxeditor.ui.password.EditPasswordElement;
@@ -2676,6 +2678,14 @@ public class CdmFormFactory extends FormToolkit {
return labelElement;
}
+ public DateElement createDateElement(ICdmFormElement formElement, String labelText, DateTime dateTime, int style){
+ Label label = new Label(formElement.getLayoutComposite(), style);
+ label.setText(labelText+" (yyyy-MM-dd)");
+ DateElement dateElement = new DateElement(formElement.getLayoutComposite(), dateTime, style);
+ dateElement.initController(this, formElement);
+ return dateElement;
+ }
+
/**
*
* Getter for the field selectionProvider
.
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java
index 52edbe8a6..9fafead81 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java
@@ -62,7 +62,7 @@ public class DateElement extends AbstractCdmComposite {
setLayout(tableWrapLayout);
}
- textDate = new Text(this, SWT.BORDER);
+ textDate = new Text(this, SWT.BORDER | SWT.WRAP);
textDate.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP, 1, 1));
toolkit.adapt(textDate, true, true);
}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java
index a7a775c58..071e07c5c 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java
@@ -9,6 +9,8 @@
*/
package eu.etaxonomy.taxeditor.ui.section.occurrence.dna;
+import org.joda.time.DateTime;
+
import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.cdm.model.molecular.DnaQuality;
import eu.etaxonomy.cdm.model.molecular.DnaSample;
@@ -16,6 +18,7 @@ import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.element.NumberWithLabelElement;
+import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
import eu.etaxonomy.taxeditor.ui.mvc.element.DateElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
@@ -28,12 +31,12 @@ public class DnaQualityDetailElement extends AbstractCdmDetailElement
// private final TermType qualityTermVocabulary = CdmStore.getService(IVocabularyService.class).find(VocabularyEnum.DnaQualityTerm.getUuid());
+ private TextWithLabelElement textPurificationMethod;
private NumberWithLabelElement numberRatioOfAbsorbance260_280;
- private NumberWithLabelElement numberRatioOfAbsorbance230_260;
+ private NumberWithLabelElement numberRatioOfAbsorbance260_230;
private NumberWithLabelElement numberConcentration;
private TermComboElement comboQualityTerm;
private DateElement dateQualityCheck;
- private DateElement dateNanoDrop;
/**
* @param formFactory
@@ -56,21 +59,17 @@ public class DnaQualityDetailElement extends AbstractCdmDetailElement
if(dnaQuality==null){
dnaQuality = DnaQuality.NewInstance();
}
- Double ratioOfAbsorbance230_260 = dnaQuality.getRatioOfAbsorbance230_260();
+ Double ratioOfAbsorbance260_230 = dnaQuality.getRatioOfAbsorbance260_230();
Double ratioOfAbsorbance260_280 = dnaQuality.getRatioOfAbsorbance260_280();
Double concentration = dnaQuality.getConcentration();
DefinedTerm qualityTerm = dnaQuality.getQualityTerm();
- numberRatioOfAbsorbance230_260 = formFactory.createNumberTextWithLabelElement(formElement, "Ratio of absorbance 230-260", ratioOfAbsorbance230_260, style);
+// textPurificationMethod = formFactory.createTextWithLabelElement(formElement, "Purification Method", dnaQuality.getPurificationMethod(), style);
numberRatioOfAbsorbance260_280 = formFactory.createNumberTextWithLabelElement(formElement, "Ratio of absorbance 260-280", ratioOfAbsorbance260_280, style);
+ numberRatioOfAbsorbance260_230 = formFactory.createNumberTextWithLabelElement(formElement, "Ratio of absorbance 260-230", ratioOfAbsorbance260_230, style);
numberConcentration = formFactory.createNumberTextWithLabelElement(formElement, "Concentration", concentration, style);
// comboQualityTerm = formFactory.createDefinedTermComboElement(qualityTermVocabulary, formElement, "Quality Term", qualityTerm, style);
-
- //TODO DNA purification details
- //TODO concentration unit
- //TODO DNA quality
- //TODO Quality check date
- //TODO Description
+ dateQualityCheck = formFactory.createDateElement(formElement, "Quality Check", dnaQuality.getQualityCheckDate(), style);
}
/*
@@ -82,14 +81,26 @@ public class DnaQualityDetailElement extends AbstractCdmDetailElement
*/
@Override
public void handleEvent(Object eventSource) {
- if(eventSource==numberRatioOfAbsorbance230_260){
- getEntity().getDnaQuality().setRatioOfAbsorbance230_260(numberRatioOfAbsorbance230_260.getDouble());
+ DnaQuality dnaQuality = getEntity().getDnaQuality();
+ if(eventSource==textPurificationMethod){
+ //TODO
+// dnaQuality.setPurificationMethod(textPurificationMethod.getText());
+ }
+ else if(eventSource==numberRatioOfAbsorbance260_230){
+ dnaQuality.setRatioOfAbsorbance260_230(numberRatioOfAbsorbance260_230.getDouble());
}
else if(eventSource==numberRatioOfAbsorbance260_280){
- getEntity().getDnaQuality().setRatioOfAbsorbance260_280(numberRatioOfAbsorbance260_280.getDouble());
+ dnaQuality.setRatioOfAbsorbance260_280(numberRatioOfAbsorbance260_280.getDouble());
}
else if(eventSource==numberConcentration){
- getEntity().getDnaQuality().setConcentration(numberConcentration.getDouble());
+ dnaQuality.setConcentration(numberConcentration.getDouble());
+ }
+ else if(eventSource==comboQualityTerm){
+ dnaQuality.setQualityTerm(comboQualityTerm.getSelection());
+ }
+ else if(eventSource==dateQualityCheck.getController()){
+ DateTime dateTime = dateQualityCheck.getController().getDateTime();
+ dnaQuality.setQualityCheckDate(dateTime);
}
}
}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
index fa748ef73..a1daa3a34 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
@@ -9,7 +9,6 @@
*/
package eu.etaxonomy.taxeditor.ui.section.occurrence.media;
-import org.eclipse.swt.widgets.Label;
import org.joda.time.DateTime;
import eu.etaxonomy.cdm.api.service.IVocabularyService;
@@ -79,13 +78,7 @@ public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement<
comboKindOfUnit = formFactory.createDefinedTermComboElement(mediaSpecimenVocabulary, formElement, "Kind of Media", entity.getKindOfUnit(), style);
textTitleLanguageString = formFactory.createLanguageStringWithLabelElement(formElement, "Motif", media.getTitle(), style);
selectionArtist = formFactory.createSelectionElement(AgentBase.class, getConversationHolder(), formElement, "Prepared by", media.getArtist(), EntitySelectionElement.ALL, style);
-
- Label label = new Label(getLayoutComposite(), style);
- label.setText("Preparation Date (yyyy-mm-dd)");
- date = new DateElement(formElement.getLayoutComposite(), entity.getMediaSpecimen().getMediaCreated(), style);
- date.initController(formFactory, formElement);
-
-
+ date = formFactory.createDateElement(formElement, "Preparation Date", entity.getMediaSpecimen().getMediaCreated(), style);
textMethodLanguageString = formFactory.createLanguageStringWithLabelElement(formElement, "Method", media.getDescription(Language.getDefaultLanguage()), style);
selection_collection = formFactory.createSelectionElement(Collection.class, getConversationHolder(), formElement, "Collection", entity.getCollection(), EntitySelectionElement.ALL, style);
text_accessionNumber = formFactory.createTextWithLabelElement(formElement, "Accession Number", entity.getAccessionNumber(), style);
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java
index 39d0eb800..e67577193 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java
@@ -193,7 +193,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
DnaSample dnaSample = (DnaSample)derivate;
if(((DnaSample) derivate).getRecordBasis()==SpecimenOrObservationType.DnaSample){
Identifier currentSampleDesignation = getCurrentSampleDesignation(dnaSample);
- if(currentSampleDesignation!=null){
+ if(currentSampleDesignation!=null && currentSampleDesignation.getIdentifier()!=null){
label += currentSampleDesignation.getIdentifier()+separator;
}
else{
@@ -203,7 +203,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
else if(((DnaSample) derivate).getRecordBasis()==SpecimenOrObservationType.TissueSample){
label += dnaSample.getKindOfUnit()+separator;
Identifier currentSampleDesignation = getCurrentSampleDesignation(dnaSample);
- if(currentSampleDesignation!=null){
+ if(currentSampleDesignation!=null && currentSampleDesignation.getIdentifier()!=null){
label += currentSampleDesignation.getIdentifier()+separator;
}
else{
@@ -242,7 +242,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
else if(derivate instanceof Sequence){
Sequence sequence = (Sequence)derivate;
Identifier currentSampleDesignation = getCurrentSampleDesignation(sequence);
- if(currentSampleDesignation!=null){
+ if(currentSampleDesignation!=null && currentSampleDesignation.getIdentifier()!=null){
label += currentSampleDesignation.getIdentifier()+separator;
}
else{
@@ -256,7 +256,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
if(parentNode!=null && parentNode.getValue() instanceof Sequence){
Sequence sequence = (Sequence) parentNode.getValue();
Identifier currentSampleDesignation = getCurrentSampleDesignation(sequence);
- if(currentSampleDesignation!=null){
+ if(currentSampleDesignation!=null && currentSampleDesignation.getIdentifier()!=null){
label = currentSampleDesignation.getIdentifier()+separator;
}
else{
@@ -353,13 +353,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
}
else if(entity instanceof Sequence){
Sequence sequence = (Sequence)entity;
- //check if sequence has its own sample designation
-// if(sequence.getSampleDesignation()){
-//
-// }
-// else
- //if not take a look at the DnaSample
- if(sequence.getDnaSample()!=null){
+ if(sequence.getDnaSample()!=null){
return getCurrentSampleDesignation(sequence.getDnaSample());
}
}
--
2.34.1