Revision 44982 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.fmap.control/src/main/java/org/gvsig/fmap/mapcontrol/dal/feature/swing/table/ConfigurationTableModel.java
ConfigurationTableModel.java | ||
---|---|---|
50 | 50 |
public static final int TYPE_COLUMN = 3; |
51 | 51 |
public static final int SIZE_COLUMN = 4; |
52 | 52 |
public static final int PRECISION_COLUMN = 5; |
53 |
public static final int PATTERN_COLUMN = 6; |
|
54 |
public static final int EMULATED = 7; |
|
55 |
private static final int COLUMN_COUNT = 8; |
|
53 |
public static final int SCALE_COLUMN = 6; |
|
54 |
public static final int PATTERN_COLUMN = 7; |
|
55 |
public static final int EMULATED = 8; |
|
56 |
private static final int COLUMN_COUNT = 9; |
|
56 | 57 |
|
57 | 58 |
|
58 | 59 |
|
59 |
private ConfigurableFeatureTableModel configurable; |
|
60 |
private final ConfigurableFeatureTableModel configurable;
|
|
60 | 61 |
|
61 | 62 |
public ConfigurationTableModel(ConfigurableFeatureTableModel configurable) { |
62 | 63 |
super(); |
63 | 64 |
this.configurable = configurable; |
64 | 65 |
} |
65 | 66 |
|
67 |
@Override |
|
66 | 68 |
public int getColumnCount() { |
67 |
// 1: visibility, 2: field name, 3: alias, 4:Type, 5:size, 6:pattern, 7:emulated |
|
68 | 69 |
return COLUMN_COUNT; |
69 | 70 |
} |
70 | 71 |
|
72 |
@Override |
|
71 | 73 |
public int getRowCount() { |
72 | 74 |
return configurable.getOriginalColumnCount(); |
73 | 75 |
} |
74 | 76 |
|
77 |
@Override |
|
75 | 78 |
public Object getValueAt(int rowIndex, int columnIndex) { |
76 |
FeatureAttributeDescriptor fad = null; |
|
77 | 79 |
String name = configurable.getOriginalColumnName(rowIndex); |
80 |
FeatureAttributeDescriptor fad = configurable.internalGetFeatureDescriptorForColumn(rowIndex); |
|
81 |
if( fad == null ) { |
|
82 |
return null; |
|
83 |
} |
|
78 | 84 |
switch (columnIndex) { |
79 | 85 |
case VISIBILITY_COLUMN: |
80 | 86 |
return configurable.isVisible(name); |
... | ... | |
83 | 89 |
case ALIAS_COLUMN: |
84 | 90 |
return configurable.getAliasForColumn(name); |
85 | 91 |
case TYPE_COLUMN: |
86 |
fad = configurable.internalGetFeatureDescriptorForColumn(rowIndex); |
|
87 |
if( fad == null ) { |
|
88 |
return null; |
|
89 |
} |
|
90 | 92 |
return fad.getDataType().getName(); |
91 | 93 |
case SIZE_COLUMN: |
92 |
fad = configurable.internalGetFeatureDescriptorForColumn(rowIndex); |
|
93 |
if( fad == null ) { |
|
94 |
return null; |
|
94 |
if( fad.getSize()<1 ) { |
|
95 |
return null; |
|
95 | 96 |
} |
96 | 97 |
return fad.getSize(); |
97 | 98 |
case PRECISION_COLUMN: |
98 |
fad = configurable.internalGetFeatureDescriptorForColumn(rowIndex); |
|
99 |
if( fad == null ) { |
|
100 |
return null; |
|
99 |
if( fad.getPrecision()<0 ) { |
|
100 |
return null; |
|
101 | 101 |
} |
102 | 102 |
return fad.getPrecision(); |
103 |
case SCALE_COLUMN: |
|
104 |
if( fad.getScale()<0 ) { |
|
105 |
return null; |
|
106 |
} |
|
107 |
return fad.getScale(); |
|
103 | 108 |
case EMULATED: |
104 |
fad = configurable.internalGetFeatureDescriptorForColumn(rowIndex); |
|
105 |
if( fad == null ) { |
|
106 |
return null; |
|
107 |
} |
|
108 | 109 |
return fad.isComputed(); |
109 | 110 |
case PATTERN_COLUMN: |
110 | 111 |
return configurable.getFormattingPattern(name); |
... | ... | |
152 | 153 |
case PATTERN_COLUMN: |
153 | 154 |
return String.class; |
154 | 155 |
case SIZE_COLUMN: |
156 |
case SCALE_COLUMN: |
|
155 | 157 |
case PRECISION_COLUMN: |
156 | 158 |
/* |
157 | 159 |
* We must use Integer.class instead of int.class |
... | ... | |
179 | 181 |
return Messages.getText("size"); |
180 | 182 |
case PRECISION_COLUMN: |
181 | 183 |
return Messages.getText("precision"); |
184 |
case SCALE_COLUMN: |
|
185 |
return Messages.getText("scale"); |
|
182 | 186 |
case TYPE_COLUMN: |
183 | 187 |
return Messages.getText("type"); |
184 | 188 |
case PATTERN_COLUMN: |
Also available in: Unified diff