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