- extended DnaQuality details view
authorPatric Plitzner <p.plitzner@bgbm.org>
Tue, 21 Oct 2014 10:41:34 +0000 (10:41 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Tue, 21 Oct 2014 10:41:34 +0000 (10:41 +0000)
 - refactored DateElement creation

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java

index 96ce2035bb52762ea4f0f78e0a3bb83796497753..03f76ed7ce5a57d1fe595afa9768eed9e01d7775 100644 (file)
@@ -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;
+    }
+
     /**
      * <p>
      * Getter for the field <code>selectionProvider</code>.
index 52edbe8a6f119c221a2eb5c5d8e97c780384f8fa..9fafead8120721bc81c7396822d2314201132347 100644 (file)
@@ -62,7 +62,7 @@ public class DateElement extends AbstractCdmComposite<DateElementController> {
             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);
     }
index a7a775c58d388b34aa6ed3a07a24266676a468e3..071e07c5c15ef7022ee75233779a9be410ac2eee 100644 (file)
@@ -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<DnaSample>
 
 //    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<DefinedTerm> comboQualityTerm;
     private DateElement dateQualityCheck;
-    private DateElement dateNanoDrop;
 
     /**
      * @param formFactory
@@ -56,21 +59,17 @@ public class DnaQualityDetailElement extends AbstractCdmDetailElement<DnaSample>
         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<DnaSample>
      */
     @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);
         }
     }
 }
index fa748ef736fd5c4da507336fef72eeabc380131a..a1daa3a347e8a5d4d1bd01d023f5055c9537b0cc 100644 (file)
@@ -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);
index 39d0eb800c2563790a0a9194c87560e0c564f0c8..e675771936f58d0cab41ac42ecf70202b9b74281 100644 (file)
@@ -193,7 +193,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
             DnaSample dnaSample = (DnaSample)derivate;
             if(((DnaSample) derivate).getRecordBasis()==SpecimenOrObservationType.DnaSample){
                 Identifier<DnaSample> 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<DnaSample> 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<DnaSample> 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<DnaSample> 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());
             }
         }