Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: f1b35900 by tchemit at 2019-05-28T08:38:33Z Improve Pairing screen - - - - - 5 changed files: - client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/ActivityLonglinePairingUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/ActivityLonglinePairingTreeTable.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/ActivityLonglinePairingTreeTableModel.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/node/ActivityLonglinePairingActivityNode.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/node/ActivityLonglinePairingRootNode.java Changes: ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/ActivityLonglinePairingUIHandler.java ===================================== @@ -36,6 +36,7 @@ import fr.ird.observe.client.ui.util.ProgressModel; import fr.ird.observe.dto.reference.DataDtoReference; import fr.ird.observe.dto.referential.common.ProgramReference; import fr.ird.observe.services.service.data.ll.pairing.ActivityLonglinePairingConfig; +import fr.ird.observe.services.service.data.ll.pairing.ActivityLonglinePairingResult; import fr.ird.observe.services.service.data.ll.pairing.ActivityLonglinePairingResultItem; import fr.ird.observe.services.service.data.ll.pairing.ActivityLonglinePairingService; import fr.ird.observe.services.service.data.ll.pairing.TripLonglinePairingResult; @@ -139,7 +140,9 @@ public class ActivityLonglinePairingUIHandler extends AdminTabUIHandler<Activity } ui.getTable().openTable(rootNode); - stepModel.setModified(false); + rootNode.setValueAt(true,2); + + stepModel.recomputeSelectedValues(); return WizardState.NEED_FIX; } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/ActivityLonglinePairingTreeTable.java ===================================== @@ -261,19 +261,26 @@ public class ActivityLonglinePairingTreeTable extends JXTreeTable { TableCellRenderer renderer = objectRenderer; Object newValue = value; + boolean enabled = true; switch (column) { + case 0: + enabled = node.isSelected(); + break; case 1: if (node instanceof ActivityLonglinePairingActivityNode) { ActivityLonglinePairingResultItem selectedValue = ((ActivityLonglinePairingActivityNode) node).getSelectedValue(); newValue = selectedValue == null ? "" : decorator.toString(selectedValue); } + enabled = node.isSelected(); break; case 2: newValue = value == null ? null : Boolean.valueOf(String.valueOf(value)); renderer = booleanInclusiveRenderer; break; } - return renderer.getTableCellRendererComponent(table, newValue, isSelected, hasFocus, row, column); + Component component = renderer.getTableCellRendererComponent(table, newValue, isSelected, hasFocus, row, column); + component.setEnabled(enabled); + return component; } } @@ -294,7 +301,7 @@ public class ActivityLonglinePairingTreeTable extends JXTreeTable { this.programDecorator = decoratorService.getReferentialReferenceDecorator(ProgramReference.class); this.tripDecorator = decoratorService.getDataReferenceDecorator(TripLonglineReference.class); this.activityDecorator = decoratorService.getDataReferenceDecorator(ActivityLonglineLogbookReference.class); - this.programIcon = UIManager.getIcon("navigation.referential.Program"); + this.programIcon = UIManager.getIcon("navigation.referential.common.Program"); this.tripIcon = UIManager.getIcon("navigation.data.Trip"); this.activityIcon = UIManager.getIcon("navigation.data.Activity"); } @@ -304,6 +311,7 @@ public class ActivityLonglinePairingTreeTable extends JXTreeTable { ActivityLonglinePairingNodeSupport node = (ActivityLonglinePairingNodeSupport) value; DtoReference valueAt = (DtoReference) node.getValueAt(0); Icon icon = null; + boolean enabled=node.isSelected(); if (value instanceof ActivityLonglinePairingProgramNode) { value = programDecorator.toString(valueAt); icon = programIcon; @@ -316,6 +324,7 @@ public class ActivityLonglinePairingTreeTable extends JXTreeTable { } Component treeCellRendererComponent = super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus); setIcon(icon); + treeCellRendererComponent.setEnabled(enabled); return treeCellRendererComponent; } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/ActivityLonglinePairingTreeTableModel.java ===================================== @@ -60,7 +60,7 @@ public class ActivityLonglinePairingTreeTableModel extends DefaultTreeTableModel @Override public boolean isCellEditable(Object node, int column) { - return column == 2 || (column == 1 && node instanceof ActivityLonglinePairingActivityNode); + return column == 2 || (column == 1 && node instanceof ActivityLonglinePairingActivityNode && (boolean) getValueAt(node, 2)); } @Override ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/node/ActivityLonglinePairingActivityNode.java ===================================== @@ -37,9 +37,16 @@ public class ActivityLonglinePairingActivityNode extends ActivityLonglinePairing private ActivityLonglinePairingResultItem selectedValue; - public ActivityLonglinePairingActivityNode(ActivityLonglinePairingResult userObject) { + ActivityLonglinePairingActivityNode(ActivityLonglinePairingResult userObject) { super(Objects.requireNonNull(userObject), false); this.selectedValue = userObject.getRelatedObservedActivity(); + if (selectedValue == null || !userObject.getItems().isEmpty()) { + ActivityLonglinePairingResultItem activityLonglinePairingResultItem = userObject.getItems().get(0); +// setValueAt(activityLonglinePairingResultItem, 1); + if (activityLonglinePairingResultItem.isDistanceValid() || activityLonglinePairingResultItem.isTimeValid()) { + setValueAt(activityLonglinePairingResultItem, 1); + } + } } @Override ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/longline/pairing/tree/node/ActivityLonglinePairingRootNode.java ===================================== @@ -41,6 +41,13 @@ public class ActivityLonglinePairingRootNode extends ActivityLonglinePairingNode return null; } + @Override + public void setValueAt(Object aValue, int column) { + if (column == 2) { + applySelected((Boolean) aValue); + } + } + public List<ActivityLonglinePairingActivityNode> getSelectedNodes() { List<ActivityLonglinePairingActivityNode> result = new LinkedList<>(); collectSelectedNodes(result); View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/f1b3590097677016ac5caadaca5d... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/f1b3590097677016ac5caadaca5d... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT