]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.browsing.ui.nattable/src/org/simantics/browsing/ui/nattable/GEColumnHeaderDataProvider.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.browsing.ui.nattable / src / org / simantics / browsing / ui / nattable / GEColumnHeaderDataProvider.java
1 package org.simantics.browsing.ui.nattable;
2
3 import org.eclipse.nebula.widgets.nattable.data.IDataProvider;
4 import org.eclipse.nebula.widgets.nattable.layer.DataLayer;
5
6 public class GEColumnHeaderDataProvider implements IDataProvider {
7         
8         NatTableGraphExplorer ge;
9         DataLayer dataLayer;
10         
11         public GEColumnHeaderDataProvider(NatTableGraphExplorer ge, DataLayer dataLayer) {
12                 this.ge = ge;
13                 this.dataLayer = dataLayer;
14         }
15         
16         @Override
17         public int getColumnCount() {
18                 return ge.getColumns().length;
19         }
20         
21         @Override
22         public int getRowCount() {
23                 return 1;
24         }
25         
26         @Override
27         public Object getDataValue(int columnIndex, int rowIndex) {
28                 if (columnIndex < 0 || rowIndex < 0)
29                         return null;
30                 return ge.getColumns()[columnIndex].getLabel();
31         }
32         
33         @Override
34         public void setDataValue(int columnIndex, int rowIndex, Object newValue) {
35                 throw new java.lang.UnsupportedOperationException();
36         }
37         
38         public void updateColumnSizes() {
39                 for (int i = 0; i < getColumnCount(); i++) {
40                         int w = ge.getColumns()[i].getWidth();
41                         if (w > 0)
42                                 dataLayer.setColumnWidthByPosition(i, w);
43                 }
44         }
45         
46         public DataLayer getDataLayer() {
47                 return dataLayer;
48         }
49
50 }