Revision 5c8b52af
Added by Patrick Plitzner over 6 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/view/dbstatus/DistributionTableView.java | ||
---|---|---|
31 | 31 |
|
32 | 32 |
import eu.etaxonomy.cdm.api.conversation.ConversationHolder; |
33 | 33 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
34 |
import eu.etaxonomy.cdm.model.common.Language; |
|
35 |
import eu.etaxonomy.cdm.model.common.Representation; |
|
34 | 36 |
import eu.etaxonomy.cdm.model.description.DescriptionElementBase; |
37 |
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm; |
|
35 | 38 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
36 | 39 |
import eu.etaxonomy.cdm.vaadin.component.DetailWindow; |
37 | 40 |
import eu.etaxonomy.cdm.vaadin.component.HorizontalToolbar; |
... | ... | |
40 | 43 |
import eu.etaxonomy.cdm.vaadin.presenter.dbstatus.DistributionTablePresenter; |
41 | 44 |
import eu.etaxonomy.cdm.vaadin.util.CdmQueryFactory; |
42 | 45 |
import eu.etaxonomy.cdm.vaadin.util.DistributionEditorUtil; |
46 |
import eu.etaxonomy.cdm.vaadin.util.TermCacher; |
|
43 | 47 |
|
44 | 48 |
public class DistributionTableView extends CustomComponent implements View{ |
45 | 49 |
|
... | ... | |
80 | 84 |
toolbar = new HorizontalToolbar(); |
81 | 85 |
mainLayout.addComponent(toolbar, "top:0.0px;right:0.0px;"); |
82 | 86 |
|
83 |
// table |
|
84 |
table = new Table(); |
|
87 |
// table + formatting |
|
88 |
table = new Table(){ |
|
89 |
private static final long serialVersionUID = -5148756917468804385L; |
|
90 |
|
|
91 |
@Override |
|
92 |
protected String formatPropertyValue(Object rowId, Object colId, Property<?> property) { |
|
93 |
String formattedValue = null; |
|
94 |
PresenceAbsenceTerm presenceAbsenceTerm = null; |
|
95 |
Object value = property.getValue(); |
|
96 |
if(value instanceof String){ |
|
97 |
presenceAbsenceTerm = TermCacher.getInstance().getPresenceAbsenceTerm((String) value); |
|
98 |
} |
|
99 |
if(presenceAbsenceTerm!=null){ |
|
100 |
Representation representation = presenceAbsenceTerm.getRepresentation(Language.DEFAULT()); |
|
101 |
if(representation!=null){ |
|
102 |
if(DistributionEditorUtil.isAbbreviatedLabels()){ |
|
103 |
formattedValue = representation.getAbbreviatedLabel(); |
|
104 |
} |
|
105 |
else{ |
|
106 |
formattedValue = representation.getLabel(); |
|
107 |
} |
|
108 |
} |
|
109 |
if(formattedValue==null){ |
|
110 |
formattedValue = presenceAbsenceTerm.getTitleCache(); |
|
111 |
} |
|
112 |
return formattedValue; |
|
113 |
} |
|
114 |
return super.formatPropertyValue(rowId, colId, property); |
|
115 |
} |
|
116 |
}; |
|
85 | 117 |
table.setImmediate(false); |
86 | 118 |
table.setWidth("100.0%"); |
87 | 119 |
table.setHeight("100.0%"); |
88 | 120 |
|
89 | 121 |
table.setColumnReorderingAllowed(true); |
90 | 122 |
table.setSortEnabled(true); |
91 |
|
|
123 |
|
|
92 | 124 |
table.setColumnCollapsingAllowed(true); |
93 | 125 |
table.setSelectable(true); |
94 | 126 |
table.setPageLength(20); |
... | ... | |
110 | 142 |
final Window popup = new Window("Choose distribution status"); |
111 | 143 |
final ListSelect termSelect = new ListSelect(); |
112 | 144 |
termSelect.setSizeFull(); |
145 |
termSelect.setNullSelectionAllowed(false); |
|
113 | 146 |
termSelect.setContainerDataSource(PresenceAbsenceTermContainer.getInstance()); |
114 | 147 |
Button btnOk = new Button("OK", new ClickListener() { |
115 | 148 |
private static final long serialVersionUID = -3732219609337335697L; |
... | ... | |
248 | 281 |
Window window = cw.createWindow(); |
249 | 282 |
getUI().addWindow(window); |
250 | 283 |
} |
251 |
|
|
284 |
|
|
252 | 285 |
} |
Also available in: Unified diff
ref #5458 Add property formatting for distribution table