Revision 44498
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/featuretype/DefaultFeatureTypeAttributePanel.java | ||
---|---|---|
40 | 40 |
import org.gvsig.fmap.dal.expressionevaluator.FeatureSymbolTable; |
41 | 41 |
import org.gvsig.fmap.dal.feature.DataProfile; |
42 | 42 |
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor; |
43 |
import org.gvsig.fmap.dal.feature.EditableFeatureType; |
|
43 | 44 |
import org.gvsig.fmap.dal.feature.EditableForeingKey; |
44 | 45 |
import org.gvsig.fmap.dal.feature.Feature; |
45 | 46 |
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor; |
... | ... | |
1157 | 1158 |
|
1158 | 1159 |
@Override |
1159 | 1160 |
public void setNameAsNew(FeatureType featureType) { |
1160 |
this.txtFieldName.setText(DefaultFeatureTypePanel.getNewFieldName(featureType)); |
|
1161 |
EditableFeatureType cloneFeatureType = featureType.getCopy().getEditable(); |
|
1162 |
EditableFeatureAttributeDescriptor newAttributeDescriptor = cloneFeatureType.add( |
|
1163 |
cloneFeatureType.getNewFieldName(), |
|
1164 |
DataTypes.STRING); |
|
1165 |
this.put(newAttributeDescriptor); |
|
1161 | 1166 |
} |
1162 | 1167 |
|
1163 | 1168 |
@Override |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.api/src/test/java/org/gvsig/fmap/dal/feature/DummyFeatureType.java | ||
---|---|---|
461 | 461 |
return null; |
462 | 462 |
} |
463 | 463 |
|
464 |
@Override |
|
465 |
public String getNewFieldName() { |
|
466 |
return null; |
|
467 |
} |
|
468 |
|
|
464 | 469 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.api/src/main/java/org/gvsig/fmap/dal/feature/FeatureType.java | ||
---|---|---|
23 | 23 |
*/ |
24 | 24 |
package org.gvsig.fmap.dal.feature; |
25 | 25 |
|
26 |
import java.util.Comparator; |
|
27 | 26 |
import java.util.Iterator; |
28 | 27 |
import java.util.List; |
29 | 28 |
import java.util.function.Predicate; |
30 |
import org.apache.commons.lang3.StringUtils; |
|
31 | 29 |
|
32 | 30 |
import org.cresques.cts.IProjection; |
33 | 31 |
|
34 | 32 |
import org.gvsig.fmap.geom.Geometry; |
35 | 33 |
import org.gvsig.tools.dataTypes.DataType; |
36 |
import org.gvsig.tools.dataTypes.DataTypes; |
|
37 | 34 |
import org.gvsig.tools.dynobject.DynClass; |
38 | 35 |
import org.gvsig.tools.dynobject.DynStruct_v2; |
39 | 36 |
import org.gvsig.tools.evaluator.Evaluator; |
... | ... | |
333 | 330 |
public List<FeatureAttributeDescriptor> getRecentUseds(); |
334 | 331 |
|
335 | 332 |
FeatureStore getAsFeatureStore(); |
333 |
|
|
334 |
public String getNewFieldName(); |
|
336 | 335 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.api/src/main/java/org/gvsig/fmap/dal/DataManager.java | ||
---|---|---|
536 | 536 |
*/ |
537 | 537 |
public String createUniqueID(); |
538 | 538 |
|
539 |
public int getDefaultSize(int dataType); |
|
540 |
|
|
539 | 541 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.csv/src/main/java/org/gvsig/fmap/dal/store/csv/CSVStoreProvider.java | ||
---|---|---|
538 | 538 |
this.type = DataTypes.GEOMETRY; |
539 | 539 |
} |
540 | 540 |
} |
541 |
switch(this.type) { |
|
542 |
case DataTypes.STRING: |
|
543 |
this.size = 50; |
|
544 |
break; |
|
545 |
case DataTypes.INT: |
|
546 |
this.size = 10; |
|
547 |
break; |
|
548 |
case DataTypes.LONG: |
|
549 |
this.size = 20; |
|
550 |
break; |
|
551 |
case DataTypes.FLOAT: |
|
552 |
this.size = 10; |
|
553 |
break; |
|
554 |
case DataTypes.DOUBLE: |
|
555 |
this.size = 20; |
|
556 |
break; |
|
557 |
default: |
|
558 |
this.size = 0; |
|
559 |
} |
|
541 |
this.size = DALLocator.getManager().getDefaultSize(this.type); |
|
542 |
|
|
560 | 543 |
while (n < args.length) { |
561 | 544 |
String option = StringUtils.trim(args[n++].toLowerCase()); |
562 | 545 |
switch (option) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/DefaultEditableFeatureType.java | ||
---|---|---|
25 | 25 |
import java.text.MessageFormat; |
26 | 26 |
|
27 | 27 |
import java.util.Iterator; |
28 |
import org.gvsig.fmap.dal.DALLocator; |
|
28 | 29 |
|
29 | 30 |
import org.gvsig.fmap.dal.DataTypes; |
30 | 31 |
import org.gvsig.fmap.dal.exception.DataListException; |
... | ... | |
202 | 203 |
} |
203 | 204 |
attr.setDataType(type); |
204 | 205 |
attr.setIndex(this.size()); |
206 |
attr.setSize(DALLocator.getManager().getDefaultSize(type)); |
|
205 | 207 |
|
206 | 208 |
super.add(attr); |
207 | 209 |
this.pk = null; |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/DefaultFeatureType.java | ||
---|---|---|
27 | 27 |
import java.util.ArrayList; |
28 | 28 |
import java.util.Arrays; |
29 | 29 |
import java.util.Collections; |
30 |
import java.util.Date; |
|
30 | 31 |
import java.util.HashSet; |
31 | 32 |
import java.util.Iterator; |
32 | 33 |
import java.util.LinkedHashSet; |
... | ... | |
60 | 61 |
import org.gvsig.tools.dynobject.exception.DynMethodException; |
61 | 62 |
import org.gvsig.tools.dynobject.exception.DynObjectValidateException; |
62 | 63 |
import org.gvsig.tools.dynobject.impl.DefaultTags; |
64 |
import org.gvsig.tools.i18n.I18nManager; |
|
63 | 65 |
import org.gvsig.tools.persistence.PersistenceManager; |
64 | 66 |
import org.gvsig.tools.persistence.Persistent; |
65 | 67 |
import org.gvsig.tools.persistence.PersistentState; |
... | ... | |
1098 | 1100 |
FeatureStore store = FeatureTypeToStoreProviderAdapter.createFeatureStore(this); |
1099 | 1101 |
return store; |
1100 | 1102 |
} |
1103 |
|
|
1104 |
|
|
1105 |
public String getNewFieldName() { |
|
1106 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
|
1107 |
String prefix = i18n.getTranslation("_Field"); |
|
1108 |
String fieldName; |
|
1109 |
for (int i = 1; i < 1000; i++) { |
|
1110 |
fieldName = prefix +"-"+i; |
|
1111 |
if( this.get(fieldName)==null ) { |
|
1112 |
return fieldName; |
|
1113 |
} |
|
1114 |
} |
|
1115 |
fieldName = prefix + "-" + (new Date()).getTime(); |
|
1116 |
return fieldName; |
|
1117 |
} |
|
1101 | 1118 |
|
1102 | 1119 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/impl/DefaultDataManager.java | ||
---|---|---|
1207 | 1207 |
String s = x.toString(); |
1208 | 1208 |
return s; |
1209 | 1209 |
} |
1210 |
@Override |
|
1211 |
public int getDefaultSize(int dataType) { |
|
1212 |
int size; |
|
1213 |
switch (dataType) { |
|
1214 |
case DataTypes.STRING: |
|
1215 |
size = 50; |
|
1216 |
break; |
|
1217 |
case DataTypes.INT: |
|
1218 |
size = 10; |
|
1219 |
break; |
|
1220 |
case DataTypes.LONG: |
|
1221 |
size = 20; |
|
1222 |
break; |
|
1223 |
case DataTypes.FLOAT: |
|
1224 |
size = 10; |
|
1225 |
break; |
|
1226 |
case DataTypes.DOUBLE: |
|
1227 |
size = 20; |
|
1228 |
break; |
|
1229 |
default: |
|
1230 |
size = 0; |
|
1231 |
} |
|
1232 |
return size; |
|
1233 |
} |
|
1210 | 1234 |
} |
Also available in: Unified diff