59
59
60
60
import static org .cirdles .squid .constants .Squid3Constants .ABS_UNCERTAINTY_DIRECTIVE ;
61
61
import org .cirdles .squid .constants .Squid3Constants .SpotTypes ;
62
+ import org .cirdles .squid .exceptions .SquidException ;
62
63
import static org .cirdles .squid .gui .SquidUI .*;
63
64
import static org .cirdles .squid .gui .SquidUIController .*;
64
65
import static org .cirdles .squid .squidReports .squidReportTables .SquidReportTable .NAME_OF_WEIGHTEDMEAN_PLOT_SORT_REPORT ;
@@ -295,6 +296,7 @@ public SquidReportTableInterface fromString(String string) {
295
296
task .setSelectedUnknownReportModel (selectedUnknownReportModel );
296
297
// makeDefaultButton.setDisable(isDefaultLab.get());// selectedUnknownReportModel.isDefault() || selectedUnknownReportModel.amWeightedMeanPlotAndSortReport() || !saveButton.isDisabled());
297
298
}
299
+ processButtons ();
298
300
299
301
}
300
302
});
@@ -306,10 +308,10 @@ private void selectSquidReportTableByPriors() {
306
308
SquidReportTableInterface selectedReportModel = (isRefMat ) ? selectedRefMatReportModel : selectedUnknownReportModel ;
307
309
SquidReportTableInterface defaultReportModel = (isRefMat ) ? Task .squidLabData .getDefaultReportTableRM () : Task .squidLabData .getDefaultReportTable ();
308
310
309
- if (defaultReportModel != null ) {
310
- reportTableCB .getSelectionModel ().select (defaultReportModel );
311
- } else if (selectedReportModel != null ) {
311
+ if (selectedReportModel != null ) {
312
312
reportTableCB .getSelectionModel ().select (selectedReportModel );
313
+ } else if (defaultReportModel != null ) {
314
+ reportTableCB .getSelectionModel ().select (defaultReportModel );
313
315
} else {
314
316
reportTableCB .getSelectionModel ().selectFirst ();
315
317
}
@@ -321,7 +323,8 @@ private void selectSquidReportTableByPriors() {
321
323
}
322
324
323
325
private void populateSquidReportTableChoiceBox () {
324
- reportTableCB .getItems ().setAll (FXCollections .observableArrayList (getTables ()));
326
+ List <SquidReportTableInterface > tables = getTables ();
327
+ reportTableCB .getItems ().setAll (FXCollections .observableArrayList (tables ));
325
328
}
326
329
327
330
private void initListViews () {
@@ -1011,35 +1014,29 @@ private List<SquidReportTableInterface> getTables() {
1011
1014
? task .getSquidReportTablesRefMat ()
1012
1015
: task .getSquidReportTablesUnknown ();
1013
1016
1014
- // remove labdatadefault
1015
- SquidReportTableInterface saveTable = null ;
1016
- for (SquidReportTableInterface table : tables ) {
1017
- if (table .getReportTableName ().compareTo (NAME_OF_WEIGHTEDMEAN_PLOT_SORT_REPORT ) == 0 ) {
1018
- table .setIsLabDataDefault (false );
1017
+ SquidReportTableInterface defaultLabDataRT ;
1018
+ if (isRefMat ) {
1019
+ defaultLabDataRT = Task .squidLabData .getDefaultReportTableRM ();
1020
+ } else {
1021
+ defaultLabDataRT = Task .squidLabData .getDefaultReportTable ();
1022
+ // backwards fix
1023
+ if (defaultLabDataRT .getReportTableName ().toUpperCase ().startsWith ("BUILTIN" )) {
1024
+ defaultLabDataRT = null ;
1025
+ Task .squidLabData .setDefaultReportTable (null );
1019
1026
}
1027
+ }
1028
+
1029
+ for (SquidReportTableInterface table : tables ) {
1020
1030
if (table .isIsLabDataDefault ()) {
1021
- saveTable = table ;
1031
+ table . setIsBuiltInSquidDefault ( false ) ;
1022
1032
}
1033
+ table .setIsLabDataDefault (false );
1023
1034
}
1024
1035
1025
- SquidReportTableInterface defaultRT ;
1026
- if (isRefMat ) {
1027
- defaultRT = Task .squidLabData .getDefaultReportTableRM ();
1028
- } else {
1029
- defaultRT = Task .squidLabData .getDefaultReportTable ();
1030
- }
1031
- if (saveTable != null ) {
1032
- if (defaultRT != null ) {
1033
- if (saveTable .getReportTableName ().compareToIgnoreCase (defaultRT .getReportTableName ()) != 0 ) {
1034
- saveTable .setIsLabDataDefault (false );
1035
- tables .remove (saveTable );
1036
- tables .remove (defaultRT );
1037
- tables .add (defaultRT );
1038
- }
1039
- }
1040
- } else if (defaultRT != null ) {
1041
- tables .remove (defaultRT );
1042
- tables .add (defaultRT );
1036
+ if (defaultLabDataRT != null ) {
1037
+ defaultLabDataRT .setIsLabDataDefault (true );
1038
+ tables .remove (defaultLabDataRT );
1039
+ tables .add (defaultLabDataRT );
1043
1040
}
1044
1041
1045
1042
// clean tables
@@ -1056,8 +1053,8 @@ private SquidReportTableInterface createCopyOfUpdatedSquidReportTable() {
1056
1053
LinkedList <SquidReportCategoryInterface > cats = new LinkedList <>();
1057
1054
categoryListView .getItems ().forEach (cat -> cats .add (cat .clone ()));
1058
1055
table .setReportCategories (cats );
1059
- table .setIsDefault (false );
1060
- // table.setIsLabDataDefault(false);
1056
+ table .setIsBuiltInSquidDefault (false );
1057
+ table .setIsLabDataDefault (false );
1061
1058
1062
1059
return table ;
1063
1060
}
@@ -1115,6 +1112,7 @@ private void copyOnAction(ActionEvent event) {
1115
1112
SquidReportTableInterface copy = createCopyOfUpdatedSquidReportTable ();
1116
1113
copy .setReportTableName (name );
1117
1114
copy .setIsLabDataDefault (false );
1115
+ copy .setIsBuiltInSquidDefault (false );
1118
1116
getTables ().add (copy );
1119
1117
populateSquidReportTableChoiceBox ();
1120
1118
reportTableCB .getSelectionModel ().select (copy );
@@ -1301,7 +1299,8 @@ private void saveOnAction(ActionEvent event) {
1301
1299
if (squidProject != null ) {
1302
1300
try {
1303
1301
ProjectFileUtilities .serializeSquidProject (squidProject , squidPersistentState .getMRUProjectFile ().getCanonicalPath ());
1304
- } catch (IOException iOException ) {
1302
+ } catch (IOException | SquidException ex ) {
1303
+ SquidMessageDialog .showWarningDialog (ex .getMessage (), null );
1305
1304
}
1306
1305
}
1307
1306
}
0 commit comments