Revision 49a35b7d
Added by Patrick Plitzner over 7 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/view/dbstatus/DistributionTableView.java | ||
---|---|---|
39 | 39 |
import eu.etaxonomy.cdm.vaadin.util.CdmQueryFactory; |
40 | 40 |
import eu.etaxonomy.cdm.vaadin.util.TermCacher; |
41 | 41 |
|
42 |
public class DistributionTableView extends CustomComponent implements IDistributionTableComponent, View{ |
|
43 |
|
|
44 |
private final class AreaColumnGenerator implements ColumnGenerator { |
|
45 |
private static final long serialVersionUID = 1L; |
|
46 |
|
|
47 |
@Override |
|
48 |
public Object generateCell(Table source, Object itemId, Object columnId) { |
|
49 |
Property<?> containerProperty = source.getContainerProperty(itemId, columnId); |
|
50 |
Object value = null; |
|
51 |
if(containerProperty != null){ |
|
52 |
value = containerProperty.getValue(); |
|
53 |
} |
|
54 |
final UUID uuid = UUID.fromString(table.getItem(itemId).getItemProperty("uuid").getValue().toString()); |
|
55 |
final ComboBox box = new ComboBox("Occurrence Status: ", PresenceAbsenceTermContainer.getInstance()); |
|
56 |
final String area = columnId.toString(); |
|
57 |
box.setImmediate(true); |
|
58 |
box.setBuffered(true); |
|
59 |
box.setValue(TermCacher.getInstance().getPresenceAbsenceTerm((String)value)); |
|
60 |
box.addValueChangeListener(new ValueChangeListener() { |
|
61 |
private static final long serialVersionUID = 6221534597911674067L; |
|
62 |
|
|
63 |
@Override |
|
64 |
public void valueChange(ValueChangeEvent event) { |
|
65 |
Taxon taxon = HibernateProxyHelper.deproxy(listener.getTaxonService().load(uuid), Taxon.class); |
|
66 |
listener.updateDistributionField(area, box.getValue(), taxon); |
|
67 |
} |
|
68 |
}); |
|
69 |
return box; |
|
70 |
} |
|
71 |
} |
|
42 |
public class DistributionTableView extends CustomComponent implements View{ |
|
72 | 43 |
|
73 | 44 |
private static final long serialVersionUID = 1L; |
74 | 45 |
private HorizontalToolbar toolbar; |
... | ... | |
115 | 86 |
return mainLayout; |
116 | 87 |
} |
117 | 88 |
|
118 |
@Override |
|
119 | 89 |
public void addListener(DistributionTablePresenter listener) { |
120 | 90 |
this.listener = listener; |
121 | 91 |
} |
... | ... | |
219 | 189 |
|
220 | 190 |
} |
221 | 191 |
|
192 |
private final class AreaColumnGenerator implements ColumnGenerator { |
|
193 |
private static final long serialVersionUID = 1L; |
|
194 |
|
|
195 |
@Override |
|
196 |
public Object generateCell(Table source, Object itemId, Object columnId) { |
|
197 |
Property<?> containerProperty = source.getContainerProperty(itemId, columnId); |
|
198 |
Object value = null; |
|
199 |
if(containerProperty != null){ |
|
200 |
value = containerProperty.getValue(); |
|
201 |
} |
|
202 |
final UUID uuid = UUID.fromString(table.getItem(itemId).getItemProperty("uuid").getValue().toString()); |
|
203 |
final ComboBox box = new ComboBox("Occurrence Status: ", PresenceAbsenceTermContainer.getInstance()); |
|
204 |
final String area = columnId.toString(); |
|
205 |
box.setImmediate(true); |
|
206 |
box.setBuffered(true); |
|
207 |
box.setValue(TermCacher.getInstance().getPresenceAbsenceTerm((String)value)); |
|
208 |
box.addValueChangeListener(new ValueChangeListener() { |
|
209 |
private static final long serialVersionUID = 6221534597911674067L; |
|
210 |
|
|
211 |
@Override |
|
212 |
public void valueChange(ValueChangeEvent event) { |
|
213 |
Taxon taxon = HibernateProxyHelper.deproxy(listener.getTaxonService().load(uuid), Taxon.class); |
|
214 |
listener.updateDistributionField(area, box.getValue(), taxon); |
|
215 |
} |
|
216 |
}); |
|
217 |
return box; |
|
218 |
} |
|
219 |
} |
|
220 |
|
|
222 | 221 |
} |
Also available in: Unified diff
ref #5458 Refactoring