diff --git a/pom.xml b/pom.xml
index 82977bd6..8108dd91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -70,6 +70,10 @@
http://bits.netbeans.org/maven2/
default
+
+ jcenter
+ http://jcenter.bintray.com/
+
jitpack.io
https://jitpack.io
@@ -83,7 +87,7 @@
org.netbeans.external
AbsoluteLayout
- RELEASE701
+ RELEASE731
com.google.guava
diff --git a/src/main/java/org/earthtime/Tripoli/dataViews/dataMonitorViews/AbstractDataMonitorView.java b/src/main/java/org/earthtime/Tripoli/dataViews/dataMonitorViews/AbstractDataMonitorView.java
index c2b3ca60..a1a40f3f 100644
--- a/src/main/java/org/earthtime/Tripoli/dataViews/dataMonitorViews/AbstractDataMonitorView.java
+++ b/src/main/java/org/earthtime/Tripoli/dataViews/dataMonitorViews/AbstractDataMonitorView.java
@@ -198,6 +198,8 @@ public class AbstractDataMonitorView extends AbstractRawDataView
private SampleTreeI dateTreeByAliquot;
+ private static transient boolean showSessions = false;
+
/**
*
*/
@@ -333,83 +335,12 @@ public void preparePanel(boolean doReScale, boolean inLiveMode) {
this.add(rawDataFilePathTextArea, JLayeredPane.DEFAULT_LAYER);
- int count = 0;
-
- SortedSet standardFractions = FractionsFilterInterface.getTripoliFractionsFiltered(tripoliFractions, FractionSelectionTypeEnum.STANDARD, IncludedTypeEnum.ALL);
-
if (tripoliFractions.size() > 0) {
- SortedSet dataModels = tripoliFractions.first().getNonPbRatiosForFractionFitting();
- Iterator dataModelsIterator = dataModels.iterator();
-
- while (dataModelsIterator.hasNext()) {
- DataModelInterface dm = dataModelsIterator.next();
-
- AbstractRawDataView rawDataModelView
- = new SessionOfStandardView( //
- this,//
- tripoliSession.getCurrentSessionForStandardsFractionation().get(dm.getRawRatioModelName()), //
- standardFractions,//
- dm, //
- DataPresentationModeEnum.RATIO,//
- new Rectangle(//
- 90, //
- count * (160 + 50) + topMargin + 50, //
- 250,//
- 160));
-
- rawDataModelView.preparePanel(doReScale, inLiveMode);
-
- this.add(rawDataModelView, JLayeredPane.DEFAULT_LAYER);
-
- double overallMinY = rawDataModelView.getMinY();
- double overallMaxY = rawDataModelView.getMaxY();
-
- // generate tics array for standards all
- BigDecimal[] yAxisTics = null;
-
- yAxisTics = TicGeneratorForAxes.generateTics(overallMinY, overallMaxY, (int) (160 / 20.0));
- if (yAxisTics.length > 15) {
- yAxisTics = TicGeneratorForAxes.generateTics(overallMinY, overallMaxY, (int) (160 / 32.0));
- }
- // create margins for y-values after axis tics calculated
- double yMarginStretch = TicGeneratorForAxes.generateMarginAdjustment(overallMinY, overallMaxY, 12.0 / 160);
- overallMinY -= yMarginStretch;
- overallMaxY += yMarginStretch;
-
- AbstractRawDataView yAxisPane = new YAxisView( //
- new AbstractRawDataView[]{rawDataModelView},
- this,//
- Color.white, //
- overallMinY,//
- overallMaxY,//
- new Rectangle( //
- 5, count * (160 + 50) + topMargin + 50, //
- 90, //
- 160),//
- false, true);
- yAxisPane.setTics(yAxisTics);
-
- this.add(yAxisPane, JLayeredPane.DEFAULT_LAYER);
-
- AbstractRawDataView sessionFitFunctionsPresentationView
- = new SessionFitFunctionsPresentationView( //
- this,//
- tripoliSession.getCurrentSessionForStandardsFractionation().get(dm.getRawRatioModelName()), //
- (FitFunctionDataInterface) rawDataModelView,//
- DataPresentationModeEnum.RATIO, //
- new Rectangle( //
- 345, //
- count * (160 + 50) + topMargin + 50, //
- 250, //
- 180));
-
- sessionFitFunctionsPresentationView.preparePanel(doReScale, inLiveMode);
-
- this.add(sessionFitFunctionsPresentationView, JLayeredPane.DEFAULT_LAYER);
-
- count++;
+ if (showSessions) {
+ prepareSessionViews(doReScale, inLiveMode);
}
+
prepareConcordia(inLiveMode);
preparePDF();
@@ -432,6 +363,86 @@ public void preparePanel(boolean doReScale, boolean inLiveMode) {
}
+ private void prepareSessionViews(boolean doReScale, boolean inLiveMode) {
+ SortedSet standardFractions = FractionsFilterInterface.getTripoliFractionsFiltered(tripoliFractions, FractionSelectionTypeEnum.STANDARD, IncludedTypeEnum.ALL);
+ int count = 0;
+ int unitHeight = 158;
+
+ SortedSet dataModels = tripoliFractions.first().getNonPbRatiosForFractionFitting();
+ Iterator dataModelsIterator = dataModels.iterator();
+
+ while (dataModelsIterator.hasNext()) {
+ DataModelInterface dm = dataModelsIterator.next();
+
+ AbstractRawDataView rawDataModelView
+ = new SessionOfStandardView( //
+ this,//
+ tripoliSession.getCurrentSessionForStandardsFractionation().get(dm.getRawRatioModelName()), //
+ standardFractions,//
+ dm, //
+ DataPresentationModeEnum.RATIO,//
+ new Rectangle(//
+ 90, //
+ count * (unitHeight + 50) + topMargin + 50, //
+ 250,//
+ unitHeight));
+
+ rawDataModelView.preparePanel(doReScale, inLiveMode);
+
+ this.add(rawDataModelView, JLayeredPane.DEFAULT_LAYER);
+
+ double overallMinY = rawDataModelView.getMinY();
+ double overallMaxY = rawDataModelView.getMaxY();
+
+ // generate tics array for standards all
+ BigDecimal[] yAxisTics = null;
+
+ yAxisTics = TicGeneratorForAxes.generateTics(overallMinY, overallMaxY, (int) (unitHeight / 20.0));
+ if (yAxisTics.length > 15) {
+ yAxisTics = TicGeneratorForAxes.generateTics(overallMinY, overallMaxY, (int) (unitHeight / 32.0));
+ }
+
+ // create margins for y-values after axis tics calculated
+ double yMarginStretch = TicGeneratorForAxes.generateMarginAdjustment(overallMinY, overallMaxY, 12.0 / unitHeight);
+ overallMinY -= yMarginStretch;
+ overallMaxY += yMarginStretch;
+
+ AbstractRawDataView yAxisPane = new YAxisView( //
+ new AbstractRawDataView[]{rawDataModelView},
+ this,//
+ Color.white, //
+ overallMinY,//
+ overallMaxY,//
+ new Rectangle( //
+ 5, count * (unitHeight + 50) + topMargin + 50, //
+ 90, //
+ unitHeight),//
+ false, true);
+ yAxisPane.setTics(yAxisTics);
+
+ this.add(yAxisPane, JLayeredPane.DEFAULT_LAYER);
+
+ AbstractRawDataView sessionFitFunctionsPresentationView
+ = new SessionFitFunctionsPresentationView( //
+ this,//
+ tripoliSession.getCurrentSessionForStandardsFractionation().get(dm.getRawRatioModelName()), //
+ (FitFunctionDataInterface) rawDataModelView,//
+ DataPresentationModeEnum.RATIO, //
+ new Rectangle( //
+ 345, //
+ count * (unitHeight + 50) + topMargin + 50, //
+ 250, //
+ 180));
+
+ sessionFitFunctionsPresentationView.preparePanel(doReScale, inLiveMode);
+
+ this.add(sessionFitFunctionsPresentationView, JLayeredPane.DEFAULT_LAYER);
+
+ count++;
+ }
+
+ }
+
private void rawDataFilePathTextFactory() throws IOException {
// show rawdatafile path
rawDataFilePathTextArea = new JTextArea(//
@@ -447,9 +458,9 @@ private void rawDataFilePathTextFactory() throws IOException {
private void showMostRecentFractionLabelFactory() {
// show rawdatafile path
- mostRecentFractionData = new JLabel("Most Recent");
+ mostRecentFractionData = new JLabel("Latest:");
- mostRecentFractionData.setBounds(leftMargin + 25, topMargin + 647, 500, 22);
+ mostRecentFractionData.setBounds(leftMargin -10, topMargin + 648, 650, 21);
mostRecentFractionData.setBorder(new LineBorder(Color.black));
mostRecentFractionData.setForeground(Color.blue);
@@ -501,8 +512,18 @@ private void buttonFactory() {
refreshButton.setEnabled(true);
this.add(refreshButton, LAYER_FIVE);
+ ET_JButton showSessionButton = new ET_JButton("Toggle Show Sessions");
+ showSessionButton.setBounds(leftMargin + 690, topMargin + 670, 135, 22);
+ showSessionButton.addActionListener((ActionEvent ae) -> {
+ showSessions = !showSessions;
+ preparePanel(true, false);
+ });
+
+ showSessionButton.setEnabled(true);
+ this.add(showSessionButton, LAYER_FIVE);
+
ET_JButton editReportSettingsButton = new ET_JButton("Edit Report Settings");
- editReportSettingsButton.setBounds(602, topMargin + 600, 120, 22);
+ editReportSettingsButton.setBounds(showSessions ? 602 : leftMargin + 10, topMargin + 600, 120, 22);
editReportSettingsButton.addActionListener((ActionEvent ae) -> {
ReportSettingsInterface.EditReportSettings(project.getSuperSample().getReportSettingsModel(), uPbReduxFrame);
uPbReduxFrame.updateReportTable(false, true, "");
@@ -513,7 +534,7 @@ private void buttonFactory() {
this.add(editReportSettingsButton, LAYER_FIVE);
ET_JButton concordiaSettingsButton = new ET_JButton("Concordia Settings");
- concordiaSettingsButton.setBounds(602, topMargin + 550, 120, 22);
+ concordiaSettingsButton.setBounds(showSessions ? 602 : leftMargin + 10, topMargin + 550, 120, 22);
concordiaSettingsButton.addActionListener((ActionEvent ae) -> {
((AliquotDetailsDisplayInterface) concordiaGraphPanel).showConcordiaDisplayOptionsDialog();
});
@@ -550,8 +571,6 @@ public void prepareConcordia(boolean inLiveMode) {
((ConcordiaGraphPanel) concordiaGraphPanel).setCurrentGraphAxesSetup(new GraphAxesSetup("C", 2));
- setConcordiaBounds(725, 620, 625);
-
((ConcordiaGraphPanel) concordiaGraphPanel).setShowTitleBox(false);
((ConcordiaGraphPanel) concordiaGraphPanel).//
@@ -568,11 +587,13 @@ public void prepareConcordia(boolean inLiveMode) {
((ConcordiaGraphPanel) concordiaGraphPanel).setShowTightToEdges(true);
- kwikiConcordiaToolBar = new KwikiConcordiaToolBar(//
- 940, topMargin + concordiaGraphPanel.getHeight() + topMargin + 50, concordiaGraphPanel, null);
-
}
+ setConcordiaBounds(showSessions ? 725 : leftMargin + 135, showSessions ? 620 : 900, 625);
+
+ kwikiConcordiaToolBar = new KwikiConcordiaToolBar(//
+ 940, topMargin + concordiaGraphPanel.getHeight() + topMargin + 50, concordiaGraphPanel, null);
+
((ConcordiaGraphPanel) concordiaGraphPanel).setSample(project.getSuperSample());
((ConcordiaGraphPanel) concordiaGraphPanel).setViewOptions();
((ConcordiaGraphPanel) concordiaGraphPanel).setShowBestDateDivider206_238(true);
@@ -641,11 +662,11 @@ public void preparePDF() {
((DateProbabilityDensityPanel) probabilityPanel).//
setSelectedFractions(filterActiveUPbFractions(project.getSuperSample().getUpbFractionsUnknown()));
- probabilityPanel.setBounds(1355, topMargin + 60, pdfWidth, pdfHeight - 5);
+ probabilityPanel.setBounds(showSessions ? 1355: leftMargin + 1050 , topMargin + 60, showSessions ? pdfWidth: 875, pdfHeight - 5);
((DateProbabilityDensityPanel) probabilityPanel).setChosenDateName("age206_238r");
- ((DateProbabilityDensityPanel) probabilityPanel).setGraphWidth(pdfWidth - 25);
+ ((DateProbabilityDensityPanel) probabilityPanel).setGraphWidth((showSessions ? pdfWidth : 875) - 25);
((DateProbabilityDensityPanel) probabilityPanel).setGraphHeight(pdfHeight - 25);
@@ -661,8 +682,9 @@ public void preparePDF() {
public void prepareDateTree() {
// april 2016 TODO: move to own method
JScrollPane dateTreeByAliquot_ScrollPane = new javax.swing.JScrollPane();
- dateTreeByAliquot_ScrollPane.setBounds(600, topMargin + 50, 125, 500);
+ dateTreeByAliquot_ScrollPane.setBounds(showSessions ? 600 : leftMargin + 10, topMargin + 50, 125, 500);
dateTreeByAliquot = new SampleTreeAnalysisMode(project.getSuperSample());
+
dateTreeByAliquot.setSampleTreeChange(this);
dateTreeByAliquot.buildTree();
dateTreeByAliquot.expandAllNodes();
@@ -817,10 +839,9 @@ public int compare(TripoliFraction tf1, TripoliFraction tf2) {
});
tripoliFractionsByDate.addAll(tripoliFractions);
- System.out.println("Latest = " + tripoliFractionsByDate.first().getFractionID());
- mostRecentFractionData.setText(tripoliFractionsByDate.first().getFractionID());
-
updateDisplays(tripoliFractionsByDate.first().getFractionID());
+ System.out.println("Latest = " + tripoliFractionsByDate.first().dateSummary());
+ mostRecentFractionData.setText("** LATEST: " + tripoliFractionsByDate.first().dateSummary());
((ReportAliquotFractionsView) ((TabbedReportViews) reportTableTabbedPane).getViewTabulatedAliquotActiveFractions())
.forceVerticalScrollToShowSpecificRow(tripoliFractionsByDate.first().getFractionID());
@@ -976,7 +997,7 @@ public void paint(Graphics2D g2d) {
paintInit(g2d);
// draw box around possibly missing pdf
- g2d.drawRect(1350, topMargin + 50, pdfWidth + 5, pdfHeight + 5);
+ g2d.drawRect(showSessions ? 1350: leftMargin + 1045, topMargin + 50, (showSessions ? pdfWidth : 875 ) + 5, pdfHeight + 5);
}
/**
diff --git a/src/main/java/org/earthtime/Tripoli/fractions/TripoliFraction.java b/src/main/java/org/earthtime/Tripoli/fractions/TripoliFraction.java
index 6798267c..59f18f71 100644
--- a/src/main/java/org/earthtime/Tripoli/fractions/TripoliFraction.java
+++ b/src/main/java/org/earthtime/Tripoli/fractions/TripoliFraction.java
@@ -42,6 +42,7 @@
import org.earthtime.UPb_Redux.fractions.FractionI;
import org.earthtime.UPb_Redux.valueModels.ValueModel;
import org.earthtime.dataDictionaries.FractionationTechniquesEnum;
+import org.earthtime.dataDictionaries.RadDates;
import org.earthtime.dataDictionaries.RadDatesForPbCorrSynchEnum;
import org.earthtime.dataDictionaries.RawRatioNames;
import org.earthtime.ratioDataModels.AbstractRatiosDataModel;
@@ -1624,4 +1625,17 @@ public boolean isCurrentlyFitted() {
public void setCurrentlyFitted(boolean currentlyFitted) {
this.currentlyFitted = currentlyFitted;
}
+
+ public String dateSummary(){
+ return fractionID
+ + "> 206/238: "
+ + uPbFraction.getRadiogenicIsotopeDateByName(RadDates.age206_238r)
+ .formatValueAndTwoSigmaForPublicationSigDigMode("ABS", -6, 2)
+ + "> 207/235: "
+ + uPbFraction.getRadiogenicIsotopeDateByName(RadDates.age207_235r)
+ .formatValueAndTwoSigmaForPublicationSigDigMode("ABS", -6, 2)
+ + "> 207/206: "
+ + uPbFraction.getRadiogenicIsotopeDateByName(RadDates.age207_206r)
+ .formatValueAndTwoSigmaForPublicationSigDigMode("ABS", -6, 2);
+ }
}
diff --git a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_A.java b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_A.java
index 59d592bd..b5ff1c55 100644
--- a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_A.java
+++ b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_A.java
@@ -74,7 +74,7 @@ private LaserchronElementIISetupUPb_A() {
BigDecimal.ZERO), //
IonCounterCollectorModel.CollectedDataStyle.COUNTS);
- // fro GG Feb 2016
+ // from GG Feb 2016
// Dead Time should be 22 ns
//
// Not sure how you are counting the integration time. Note that values are measured four times on each peak. Values below are for each one of the four measurements:
@@ -96,12 +96,12 @@ private LaserchronElementIISetupUPb_A() {
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Th232, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Th232, 0.014);
+ IsotopesEnum.Th232, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb208, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Pb208, 0.014);
+ IsotopesEnum.Pb208, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb207, singleCollector);
diff --git a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_B.java b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_B.java
index 3171f28b..5ea5503d 100644
--- a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_B.java
+++ b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_B.java
@@ -102,12 +102,12 @@ private LaserchronElementIISetupUPb_B() {
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Th232, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Th232, 0.014);
+ IsotopesEnum.Th232, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb208, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Pb208, 0.014);
+ IsotopesEnum.Pb208, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb207, singleCollector);
diff --git a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_C.java b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_C.java
index b1cd8c23..e5ddccc2 100644
--- a/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_C.java
+++ b/src/main/java/org/earthtime/Tripoli/massSpecSetups/singleCollector/ThermoFinnigan/LaserchronElementIISetupUPb_C.java
@@ -104,12 +104,12 @@ private LaserchronElementIISetupUPb_C() {
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Th232, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Th232, 0.014);
+ IsotopesEnum.Th232, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb208, singleCollector);
isotopeMappingModel.getIsotopeToIntegrationTimeMap().put( //
- IsotopesEnum.Pb208, 0.014);
+ IsotopesEnum.Pb208, 0.0104);
isotopeMappingModel.getIsotopeToCollectorMap().put(//
IsotopesEnum.Pb207, singleCollector);
diff --git a/src/main/java/org/earthtime/Tripoli/rawDataFiles/handlers/Thermo/LaserchronElementIIFileHandler.java b/src/main/java/org/earthtime/Tripoli/rawDataFiles/handlers/Thermo/LaserchronElementIIFileHandler.java
index 888d969f..69c09858 100644
--- a/src/main/java/org/earthtime/Tripoli/rawDataFiles/handlers/Thermo/LaserchronElementIIFileHandler.java
+++ b/src/main/java/org/earthtime/Tripoli/rawDataFiles/handlers/Thermo/LaserchronElementIIFileHandler.java
@@ -136,7 +136,7 @@ public void getAndLoadRawIntensityDataFile(SwingWorker loadDataTask, boolean usi
Arrays.sort(analysisFiles, new FractionFileNameComparator());
if (analysisFiles.length > 0) {
- Arrays.sort(analysisFiles, new FractionFileModifiedComparator());
+// this can be broken => depend on naming convention Arrays.sort(analysisFiles, new FractionFileModifiedComparator());
String onPeakFileContents = URIHelper.getTextFromURI(analysisFiles[0].getAbsolutePath()).substring(0, 32);
if (isValidRawDataFileType(analysisFiles[0]) //
diff --git a/src/main/java/org/earthtime/UPb_Redux/dateInterpretation/DateProbabilityDensityPanel.java b/src/main/java/org/earthtime/UPb_Redux/dateInterpretation/DateProbabilityDensityPanel.java
index 17527101..e57c0a80 100644
--- a/src/main/java/org/earthtime/UPb_Redux/dateInterpretation/DateProbabilityDensityPanel.java
+++ b/src/main/java/org/earthtime/UPb_Redux/dateInterpretation/DateProbabilityDensityPanel.java
@@ -739,7 +739,7 @@ public void prepareAndPaintPanel() {
@Override
public void preparePanel(boolean doReScale, boolean inLiveMode) {
- System.out.println("========Probability Prep=======");
+// System.out.println("========Probability Prep=======");
this.removeAll();
//nov 2011