1 package fr.ifremer.dali.ui.swing.content.observation.operation.measurement.ungrouped;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import fr.ifremer.dali.dto.data.sampling.SamplingOperationDTO;
27 import fr.ifremer.dali.dto.data.survey.SurveyDTO;
28 import fr.ifremer.dali.dto.referential.DepartmentDTO;
29 import fr.ifremer.dali.ui.swing.util.table.AbstractDaliTableModel;
30 import fr.ifremer.dali.ui.swing.util.table.DaliColumnIdentifier;
31 import fr.ifremer.quadrige3.ui.swing.table.SwingTableColumnModel;
32
33 import static org.nuiton.i18n.I18n.n;
34
35
36
37
38 public class OperationMeasurementsUngroupedTableModel extends AbstractDaliTableModel<OperationMeasurementsUngroupedRowModel> {
39
40
41
42
43 public static final DaliColumnIdentifier<OperationMeasurementsUngroupedRowModel> NAME = DaliColumnIdentifier.newId(
44 OperationMeasurementsUngroupedRowModel.PROPERTY_NAME,
45 n("dali.property.mnemonic"),
46 n("dali.samplingOperation.measurement.mnemonic.tip"),
47 String.class, true);
48
49
50
51
52 public static final DaliColumnIdentifier<OperationMeasurementsUngroupedRowModel> ANALYST = DaliColumnIdentifier.newId(
53 OperationMeasurementsUngroupedRowModel.PROPERTY_ANALYST,
54 n("dali.property.analyst"),
55 n("dali.samplingOperation.measurement.analyst.tip"),
56 DepartmentDTO.class);
57
58 private boolean readOnly;
59
60
61
62
63
64
65 public OperationMeasurementsUngroupedTableModel(final SwingTableColumnModel columnModel) {
66 super(columnModel, false, false);
67 this.readOnly = false;
68 }
69
70
71
72
73
74
75 public void setReadOnly(boolean readOnly) {
76 this.readOnly = readOnly;
77 }
78
79
80
81
82 @Override
83 public OperationMeasurementsUngroupedRowModel createNewRow() {
84 return new OperationMeasurementsUngroupedRowModel(readOnly);
85 }
86
87
88
89
90 @Override
91 public DaliColumnIdentifier<OperationMeasurementsUngroupedRowModel> getFirstColumnEditing() {
92 return NAME;
93 }
94
95
96
97
98 @Override
99 public OperationMeasurementsUngroupedTableUIModel getTableUIModel() {
100 return (OperationMeasurementsUngroupedTableUIModel) super.getTableUIModel();
101 }
102
103
104
105
106 @Override
107 public String getStateContext() {
108 if (getTableUIModel().getSurvey() != null && getTableUIModel().getSurvey().getProgram() != null) {
109
110 return SurveyDTO.PROPERTY_SAMPLING_OPERATIONS + '_'
111 + SamplingOperationDTO.PROPERTY_PMFMS + '_'
112 + getTableUIModel().getSurvey().getProgram().getCode();
113 }
114
115 return super.getStateContext();
116 }
117 }