Revision 44338
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.api/src/main/java/org/gvsig/expressionevaluator/Interpreter.java | ||
---|---|---|
38 | 38 |
|
39 | 39 |
public boolean isSQLCompatible(); |
40 | 40 |
|
41 |
public Object call(String function, Object... args) throws Exception; |
|
42 |
|
|
43 |
public boolean hasFunction(String function); |
|
44 |
|
|
41 | 45 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.api/src/main/java/org/gvsig/expressionevaluator/spi/AbstractSymbolTable.java | ||
---|---|---|
24 | 24 |
|
25 | 25 |
private final String name; |
26 | 26 |
|
27 |
private class ScriptFunction extends AbstractFunction {
|
|
27 |
public class ScriptFunction extends AbstractFunction {
|
|
28 | 28 |
|
29 | 29 |
public ScriptFunction(String funcName) { |
30 | 30 |
super("Script", funcName, Range.between(1, Integer.MAX_VALUE)); |
... | ... | |
228 | 228 |
} |
229 | 229 |
|
230 | 230 |
@Override |
231 |
public Collection<Function> localfunctions() { |
|
232 |
if( this.functions == null ) { |
|
233 |
return Collections.EMPTY_LIST; |
|
234 |
} |
|
235 |
return Collections.unmodifiableCollection(this.functions.values()); |
|
236 |
} |
|
237 |
|
|
238 |
@Override |
|
231 | 239 |
public Collection<Script> scripts() { |
232 | 240 |
Set<Script> theScripts = new HashSet<>(); |
233 | 241 |
for (SymbolTable symbolTable : this.symbolTables) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.api/src/main/java/org/gvsig/expressionevaluator/SymbolTable.java | ||
---|---|---|
26 | 26 |
public Collection<String> variables(); |
27 | 27 |
|
28 | 28 |
public Collection<Function> functions(); |
29 |
|
|
30 |
public Collection<Function> localfunctions(); |
|
29 | 31 |
|
30 | 32 |
public Collection<Script> scripts(); |
31 | 33 |
|
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/symboltable/ProgrammingSymbolTable.java | ||
---|---|---|
21 | 21 |
import org.gvsig.expressionevaluator.impl.function.programming.ReturnFunction; |
22 | 22 |
import org.gvsig.expressionevaluator.impl.function.programming.TryFunction; |
23 | 23 |
import org.gvsig.expressionevaluator.impl.function.programming.URLFunction; |
24 |
import org.gvsig.expressionevaluator.impl.function.programming.UserFunction; |
|
24 | 25 |
import org.gvsig.expressionevaluator.impl.function.programming.WhileFunction; |
25 | 26 |
import org.gvsig.expressionevaluator.spi.AbstractSymbolTable; |
26 | 27 |
|
... | ... | |
57 | 58 |
this.addFunction(new URLFunction()); |
58 | 59 |
this.addFunction(new LabelValueFunction()); |
59 | 60 |
// this.addFunction(new EvalFunction()); |
61 |
this.addFunction(new UserFunction()); |
|
60 | 62 |
} |
61 | 63 |
|
62 | 64 |
private void addOperator(Function operator) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/function/date/DateFunction.java | ||
---|---|---|
29 | 29 |
|
30 | 30 |
@Override |
31 | 31 |
public Object call(Interpreter interpreter, Object[] args) { |
32 |
Object date_obj = getObject(args, 0); |
|
33 |
if( date_obj instanceof Date ) { |
|
34 |
Date x = new Date(((Date) date_obj).getTime()); |
|
35 |
x.setHours(0); |
|
36 |
x.setMinutes(0); |
|
37 |
x.setSeconds(0); |
|
38 |
return x; |
|
39 |
} |
|
32 | 40 |
String date = getStr(args, 0); |
33 | 41 |
String format = null; |
34 | 42 |
if( args.length==2 ) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/function/date/TimeFunction.java | ||
---|---|---|
29 | 29 |
|
30 | 30 |
@Override |
31 | 31 |
public Object call(Interpreter interpreter, Object[] args) { |
32 |
Object date_obj = getObject(args, 0); |
|
33 |
if( date_obj instanceof Date ) { |
|
34 |
Date x = new Date(((Date) date_obj).getTime()); |
|
35 |
x.setDate(0); |
|
36 |
x.setMonth(0); |
|
37 |
x.setYear(0); |
|
38 |
return x; |
|
39 |
} |
|
32 | 40 |
String date = getStr(args, 0); |
33 | 41 |
String format = null; |
34 | 42 |
if( args.length==2 ) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/function/date/TimestampFunction.java | ||
---|---|---|
29 | 29 |
|
30 | 30 |
@Override |
31 | 31 |
public Object call(Interpreter interpreter, Object[] args) { |
32 |
Object date_obj = getObject(args, 0); |
|
33 |
if( date_obj instanceof Date ) { |
|
34 |
return date_obj; |
|
35 |
} |
|
32 | 36 |
String date = getStr(args, 0); |
33 | 37 |
String format = null; |
34 | 38 |
if( args.length==2 ) { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/function/programming/GetitemFunction.java | ||
---|---|---|
10 | 10 |
import org.gvsig.tools.util.GetItem; |
11 | 11 |
import org.gvsig.tools.util.GetItem64; |
12 | 12 |
import org.gvsig.tools.util.GetItemByKey; |
13 |
import org.gvsig.tools.util.PropertiesSupport; |
|
13 | 14 |
|
14 | 15 |
public class GetitemFunction extends AbstractFunction { |
15 | 16 |
|
... | ... | |
76 | 77 |
Object key = getObject(args,1); |
77 | 78 |
value = l.get(key); |
78 | 79 |
|
80 |
} else if( obj instanceof PropertiesSupport ) { |
|
81 |
PropertiesSupport l = (PropertiesSupport)obj; |
|
82 |
String propName = getStr(args,1); |
|
83 |
value = l.getProperty(propName); |
|
84 |
|
|
79 | 85 |
} else { |
80 | 86 |
throw new ExpressionRuntimeException("The "+NAME+" function require a String, List or Map and a received a '"+obj.getClass().getSimpleName()+"'."); |
81 | 87 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/function/programming/UserFunction.java | ||
---|---|---|
1 |
package org.gvsig.expressionevaluator.impl.function.programming; |
|
2 |
|
|
3 |
import org.apache.commons.lang3.Range; |
|
4 |
import org.gvsig.expressionevaluator.Function; |
|
5 |
import org.gvsig.expressionevaluator.Interpreter; |
|
6 |
import org.gvsig.expressionevaluator.spi.AbstractFunction; |
|
7 |
import org.gvsig.tools.ToolsLocator; |
|
8 |
|
|
9 |
public class UserFunction extends AbstractFunction { |
|
10 |
|
|
11 |
public static final String NAME = "USER"; |
|
12 |
|
|
13 |
public UserFunction() { |
|
14 |
super(Function.GROUP_PROGRAMMING, |
|
15 |
NAME, |
|
16 |
Range.is(0), |
|
17 |
"Get the current user logged.", |
|
18 |
NAME+"()", |
|
19 |
null, |
|
20 |
"SimpleIdentity", |
|
21 |
false |
|
22 |
); |
|
23 |
this.addAlias("CURRENTUSER"); |
|
24 |
} |
|
25 |
|
|
26 |
@Override |
|
27 |
public boolean allowConstantFolding() { |
|
28 |
return false; |
|
29 |
} |
|
30 |
|
|
31 |
@Override |
|
32 |
public Object call(Interpreter interpreter, Object[] args) throws Exception { |
|
33 |
return ToolsLocator.getIdentityManager().getCurrentIdentity(); |
|
34 |
} |
|
35 |
|
|
36 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultInterpreter.java | ||
---|---|---|
22 | 22 |
import org.gvsig.expressionevaluator.impl.function.operator.BinaryOperator; |
23 | 23 |
import org.gvsig.expressionevaluator.impl.function.operator.UnaryOperator; |
24 | 24 |
import org.gvsig.expressionevaluator.impl.function.programming.ReturnFunction.ReturnException; |
25 |
import org.gvsig.expressionevaluator.spi.AbstractSymbolTable; |
|
25 | 26 |
|
26 | 27 |
public class DefaultInterpreter implements Interpreter { |
27 | 28 |
|
... | ... | |
104 | 105 |
return other; |
105 | 106 |
} |
106 | 107 |
|
108 |
@Override |
|
109 |
public Object call(String function, Object... args) throws Exception { |
|
110 |
Function fn = this.symbolTable.function(function); |
|
111 |
Object value = fn.call(this, args); |
|
112 |
return value; |
|
113 |
} |
|
114 |
|
|
115 |
@Override |
|
116 |
public boolean hasFunction(String function) { |
|
117 |
Function fn = this.symbolTable.function(function); |
|
118 |
if( fn == null ) { |
|
119 |
return false; |
|
120 |
} |
|
121 |
if( fn instanceof AbstractSymbolTable.ScriptFunction ) { |
|
122 |
return false; |
|
123 |
} |
|
124 |
return true; |
|
125 |
} |
|
126 |
|
|
107 | 127 |
public int getMaxRecursionLimit() { |
108 | 128 |
return this.maxRecursionLimit; |
109 | 129 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultOptimizer.java | ||
---|---|---|
86 | 86 |
} |
87 | 87 |
|
88 | 88 |
@Override |
89 |
public Collection<Function> localfunctions() { |
|
90 |
return this.symbolTable.functions(); |
|
91 |
} |
|
92 |
|
|
93 |
@Override |
|
89 | 94 |
public Collection<Script> scripts() { |
90 | 95 |
return this.symbolTable.scripts(); |
91 | 96 |
} |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.swing/org.gvsig.expressionevaluator.swing.impl/src/main/java/org/gvsig/expressionevaluator/swing/impl/DefaultJExpressionBuilder.java | ||
---|---|---|
411 | 411 |
} |
412 | 412 |
return component; |
413 | 413 |
} |
414 |
|
|
415 |
private JLabel JPanel() { |
|
416 |
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. |
|
417 |
} |
|
418 | 414 |
}); |
419 | 415 |
|
420 | 416 |
this.treeElements.addTreeSelectionListener(new TreeSelectionListener() { |
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.swing/org.gvsig.expressionevaluator.swing.api/src/main/java/org/gvsig/expressionevaluator/swing/Element.java | ||
---|---|---|
3 | 3 |
import java.util.Collection; |
4 | 4 |
import java.util.Iterator; |
5 | 5 |
import java.util.List; |
6 |
import javax.swing.ImageIcon;
|
|
6 |
import javax.swing.Icon; |
|
7 | 7 |
import org.gvsig.expressionevaluator.Function; |
8 | 8 |
import org.gvsig.tools.swing.api.Component; |
9 | 9 |
import org.gvsig.tools.util.LabeledValue; |
... | ... | |
56 | 56 |
|
57 | 57 |
public String getIconName(); |
58 | 58 |
|
59 |
public ImageIcon getIcon();
|
|
59 |
public Icon getIcon(); |
|
60 | 60 |
|
61 | 61 |
public Collection<Element> getValues(); |
62 | 62 |
|
trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.swing/org.gvsig.expressionevaluator.swing.api/src/main/java/org/gvsig/expressionevaluator/swing/spi/AbstractElement.java | ||
---|---|---|
3 | 3 |
import java.util.Collection; |
4 | 4 |
import java.util.Collections; |
5 | 5 |
import java.util.Objects; |
6 |
import javax.swing.Icon; |
|
6 | 7 |
import javax.swing.ImageIcon; |
7 | 8 |
import org.gvsig.expressionevaluator.swing.Element; |
8 | 9 |
import org.gvsig.expressionevaluator.swing.ExpressionBuilderConfig; |
... | ... | |
21 | 22 |
|
22 | 23 |
protected static final Logger LOGGER = LoggerFactory.getLogger(AbstractElement.class); |
23 | 24 |
|
24 |
final Object value; |
|
25 |
final String iconName; |
|
26 |
final ImageIcon icon;
|
|
25 |
private final Object value;
|
|
26 |
private final String iconName;
|
|
27 |
protected Icon icon;
|
|
27 | 28 |
private String name; |
28 | 29 |
private ExpressionBuilderConfig config; |
29 | 30 |
|
... | ... | |
131 | 132 |
} |
132 | 133 |
|
133 | 134 |
@Override |
134 |
public ImageIcon getIcon() {
|
|
135 |
public Icon getIcon() { |
|
135 | 136 |
return this.icon; |
136 | 137 |
} |
137 | 138 |
|
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.i18n/src/main/java/org/gvsig/i18n/tools/impl/DefaultI18Manager.java | ||
---|---|---|
25 | 25 |
|
26 | 26 |
import java.io.File; |
27 | 27 |
import java.net.MalformedURLException; |
28 |
import java.util.List; |
|
28 | 29 |
import java.util.Locale; |
29 |
import java.util.logging.Level; |
|
30 |
import java.util.logging.Logger; |
|
31 | 30 |
|
32 | 31 |
import org.gvsig.i18n.Messages; |
33 | 32 |
import org.gvsig.tools.i18n.I18nManager; |
... | ... | |
35 | 34 |
/** |
36 | 35 |
* This manager is in charge of providing with a richer text translation than |
37 | 36 |
* the one used by default. |
38 |
*
|
|
39 |
*
|
|
37 |
* |
|
38 |
* |
|
40 | 39 |
* @author gvSIG Team |
41 |
*
|
|
40 |
* |
|
42 | 41 |
*/ |
43 | 42 |
public class DefaultI18Manager implements I18nManager { |
44 | 43 |
|
45 |
public String getTranslation(String message) { |
|
46 |
return Messages.getText(message); |
|
47 |
} |
|
44 |
@Override |
|
45 |
public String getTranslation(String message) { |
|
46 |
return Messages.getText(message); |
|
47 |
} |
|
48 | 48 |
|
49 |
public String getTranslation(String message, String[] args) { |
|
50 |
return Messages.getText(message,args); |
|
49 |
@Override |
|
50 |
public String getTranslation(String message, String[] args) { |
|
51 |
return Messages.getText(message, args); |
|
52 |
} |
|
53 |
|
|
54 |
@Override |
|
55 |
public void addResourceFamily(String family, ClassLoader loader, |
|
56 |
String callerName) { |
|
57 |
if (!Messages.hasLocales()) { |
|
58 |
Messages.addLocale(Locale.getDefault()); |
|
51 | 59 |
} |
60 |
Messages.addResourceFamily(family, loader, callerName); |
|
61 |
} |
|
52 | 62 |
|
53 |
public void addResourceFamily(String family, ClassLoader loader, |
|
54 |
String callerName) { |
|
55 |
if (!Messages.hasLocales()) { |
|
56 |
Messages.addLocale(Locale.getDefault()); |
|
57 |
} |
|
58 |
Messages.addResourceFamily(family, loader, callerName); |
|
59 |
} |
|
63 |
@Override |
|
64 |
public void addResourceFamily(String family, File folder) { |
|
65 |
if (!Messages.hasLocales()) { |
|
66 |
Messages.addLocale(Locale.getDefault()); |
|
67 |
} |
|
68 |
try { |
|
69 |
Messages.addResourceFamily(family, folder); |
|
70 |
} catch (MalformedURLException ex) { |
|
71 |
throw new RuntimeException(ex); |
|
72 |
} |
|
73 |
} |
|
60 | 74 |
|
61 |
public void addResourceFamily(String family, File folder) { |
|
62 |
if (!Messages.hasLocales()) { |
|
63 |
Messages.addLocale(Locale.getDefault()); |
|
64 |
} |
|
65 |
try { |
|
66 |
Messages.addResourceFamily(family, folder); |
|
67 |
} catch (MalformedURLException ex) { |
|
68 |
throw new RuntimeException(ex); |
|
69 |
} |
|
70 |
} |
|
75 |
@Override |
|
76 |
public List<Locale> getPreferredLocales() { |
|
77 |
return Messages.getPreferredLocales(); |
|
78 |
} |
|
79 |
|
|
80 |
@Override |
|
81 |
public Locale getCurrentLocale() { |
|
82 |
return Messages.getCurrentLocale(); |
|
83 |
} |
|
71 | 84 |
} |
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/DefaultForeingKey.java | ||
---|---|---|
130 | 130 |
} |
131 | 131 |
|
132 | 132 |
private boolean foreingKey; |
133 |
private boolean selectable;
|
|
133 |
private boolean closedList;
|
|
134 | 134 |
private String labelFormula; |
135 | 135 |
private String tableName; |
136 | 136 |
private String codeName; |
137 |
private DynObjectValueItem[] availableValues; |
|
137 | 138 |
|
138 | 139 |
private FeatureAttributeDescriptor descriptor; |
139 | 140 |
|
... | ... | |
146 | 147 |
} |
147 | 148 |
|
148 | 149 |
@Override |
149 |
public boolean isSelectable() {
|
|
150 |
return this.selectable;
|
|
150 |
public boolean isClosedList() {
|
|
151 |
return this.closedList;
|
|
151 | 152 |
} |
152 | 153 |
|
153 | 154 |
@Override |
154 |
public void setSelectable(boolean selectable) {
|
|
155 |
this.selectable = selectable;
|
|
155 |
public void setClosedList(boolean selectable) {
|
|
156 |
this.closedList = selectable;
|
|
156 | 157 |
} |
157 | 158 |
|
158 | 159 |
@Override |
... | ... | |
198 | 199 |
@Override |
199 | 200 |
public boolean isEmpty() { |
200 | 201 |
if (!this.foreingKey |
201 |
&& !this.selectable
|
|
202 |
&& !this.closedList
|
|
202 | 203 |
&& StringUtils.isBlank(this.tableName) |
203 | 204 |
&& StringUtils.isBlank(this.codeName) |
204 | 205 |
&& StringUtils.isBlank(this.labelFormula)) { |
... | ... | |
210 | 211 |
@Override |
211 | 212 |
public void clean() { |
212 | 213 |
this.foreingKey = false; |
213 |
this.selectable = false;
|
|
214 |
this.closedList = false;
|
|
214 | 215 |
this.tableName = null; |
215 | 216 |
this.codeName = null; |
216 | 217 |
this.labelFormula = null; |
... | ... | |
383 | 384 |
|
384 | 385 |
@Override |
385 | 386 |
public DynObjectValueItem[] getAvailableValues(ContextForeingKey context) { |
386 |
if (!this.isSelectable()) {
|
|
387 |
if (!this.isClosedList()) {
|
|
387 | 388 |
return null; |
388 | 389 |
} |
389 |
context = createLocalContextIfNull(context); |
|
390 |
try { |
|
391 |
Expression labelExpression = context.getLabelExpression(); |
|
392 |
FeatureStore store = context.getFeatureStore(); |
|
393 |
if (store == null) { |
|
394 |
return null; |
|
395 |
} |
|
396 |
|
|
397 |
int count = (int) store.getFeatureCount(); |
|
398 |
DynObjectValueItem[] values = new DynObjectValueItem[Math.min(count, MAX_AVAILABLE_VALUES)]; |
|
399 |
int n = 0; |
|
400 |
for (Feature feature : store.getFeatureSet()) { |
|
401 |
Object code = feature.get(codeName); |
|
402 |
Object value; |
|
403 |
if (labelExpression == null) { |
|
404 |
value = code; |
|
405 |
} else { |
|
406 |
context.getFeatureSymbolTable().setFeature(feature); |
|
407 |
value = labelExpression.execute(context.getSymbolTable()); |
|
390 |
if( this.availableValues == null ) { |
|
391 |
context = createLocalContextIfNull(context); |
|
392 |
try { |
|
393 |
Expression labelExpression = context.getLabelExpression(); |
|
394 |
FeatureStore store = context.getFeatureStore(); |
|
395 |
if (store == null) { |
|
396 |
return null; |
|
408 | 397 |
} |
409 |
values[n++] = new DynObjectValueItem(code, Objects.toString(value, Objects.toString(code, "##ERROR##"))); |
|
410 |
if( n>=MAX_AVAILABLE_VALUES ) { |
|
411 |
break; |
|
398 |
int count = (int) store.getFeatureCount(); |
|
399 |
DynObjectValueItem[] values = new DynObjectValueItem[Math.min(count, MAX_AVAILABLE_VALUES)]; |
|
400 |
int n = 0; |
|
401 |
for (Feature feature : store.getFeatureSet()) { |
|
402 |
Object code = feature.get(codeName); |
|
403 |
Object value; |
|
404 |
if (labelExpression == null) { |
|
405 |
value = code; |
|
406 |
} else { |
|
407 |
context.getFeatureSymbolTable().setFeature(feature); |
|
408 |
value = labelExpression.execute(context.getSymbolTable()); |
|
409 |
} |
|
410 |
values[n++] = new DynObjectValueItem(code, Objects.toString(value, Objects.toString(code, "##ERROR##"))); |
|
411 |
if( n>=MAX_AVAILABLE_VALUES ) { |
|
412 |
break; |
|
413 |
} |
|
412 | 414 |
} |
415 |
this.availableValues = values; |
|
416 |
} catch (Exception ex) { |
|
417 |
LOGGER.warn("Can't get values from table '" + tableName + "' of field.", ex); |
|
418 |
} finally { |
|
419 |
disposeIfLocalContext(context); |
|
413 | 420 |
} |
414 |
return values; |
|
415 |
} catch (Exception ex) { |
|
416 |
LOGGER.warn("Can't get values from table '" + tableName + "' of field.", ex); |
|
417 |
} finally { |
|
418 |
disposeIfLocalContext(context); |
|
419 | 421 |
} |
420 |
return null;
|
|
422 |
return this.availableValues;
|
|
421 | 423 |
} |
424 |
|
|
425 |
public String getLabelForValue(Object value) { |
|
426 |
DynObjectValueItem[] values = this.getAvailableValues(null); |
|
427 |
if( values != null ) { |
|
428 |
for (DynObjectValueItem value1 : values) { |
|
429 |
if( Objects.equals(value, value1.getValue()) ) { |
|
430 |
return value1.getLabel(); |
|
431 |
} |
|
432 |
} |
|
433 |
} |
|
434 |
return Objects.toString(value, "##ERROR##"); |
|
435 |
} |
|
422 | 436 |
|
423 | 437 |
@Override |
424 | 438 |
public void loadFromState(PersistentState state) |
425 | 439 |
throws PersistenceException { |
426 | 440 |
foreingKey = state.getBoolean("foreingKey"); |
427 |
selectable = state.getBoolean("selectable");
|
|
441 |
closedList = state.getBoolean("selectable");
|
|
428 | 442 |
labelFormula = state.getString("labelFormula"); |
429 | 443 |
codeName = state.getString("codeName"); |
430 | 444 |
tableName = state.getString("tableName"); |
... | ... | |
433 | 447 |
@Override |
434 | 448 |
public void saveToState(PersistentState state) throws PersistenceException { |
435 | 449 |
state.set("foreingKey", foreingKey); |
436 |
state.set("selectable", selectable);
|
|
450 |
state.set("selectable", closedList);
|
|
437 | 451 |
state.set("labelFormula", labelFormula); |
438 | 452 |
state.set("codeName", codeName); |
439 | 453 |
state.set("tableName", tableName); |
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/DefaultEditableFeatureAttributeDescriptor.java | ||
---|---|---|
428 | 428 |
throw new IllegalArgumentException("Name can't be empty"); |
429 | 429 |
} |
430 | 430 |
switch(name.toLowerCase()) { |
431 |
case "isreadoly": |
|
432 |
case "readoly": |
|
431 |
case "isreadonly":
|
|
432 |
case "readonly":
|
|
433 | 433 |
this.setIsReadOnly(DataTypeUtils.toBoolean(value, false)); |
434 | 434 |
break; |
435 | 435 |
case "hidden": |
... | ... | |
488 | 488 |
case "foreingkey.label": |
489 | 489 |
this.getForeingKey().setLabelFormula(DataTypeUtils.toString(value, "")); |
490 | 490 |
break; |
491 |
case "foreingkey.selectable":
|
|
492 |
this.getForeingKey().setSelectable(DataTypeUtils.toBoolean(value, false));
|
|
491 |
case "foreingkey.closedlist":
|
|
492 |
this.getForeingKey().setClosedList(DataTypeUtils.toBoolean(value, false));
|
|
493 | 493 |
break; |
494 | 494 |
case "foreingkey.table": |
495 | 495 |
this.getForeingKey().setTableName(DataTypeUtils.toString(value, 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/DefaultFeatureAttributeDescriptor.java | ||
---|---|---|
52 | 52 |
import org.gvsig.tools.ToolsLocator; |
53 | 53 |
import org.gvsig.tools.dataTypes.CoercionException; |
54 | 54 |
import org.gvsig.tools.dataTypes.DataType; |
55 |
import org.gvsig.tools.dataTypes.DataTypeUtils; |
|
56 | 55 |
import org.gvsig.tools.dynobject.DynField; |
57 | 56 |
import org.gvsig.tools.dynobject.DynField_LabelAttribute; |
58 | 57 |
import org.gvsig.tools.dynobject.DynField_v2; |
... | ... | |
69 | 68 |
import org.gvsig.tools.evaluator.Evaluator; |
70 | 69 |
import org.gvsig.tools.evaluator.EvaluatorData; |
71 | 70 |
import org.gvsig.tools.evaluator.EvaluatorException; |
71 |
import org.gvsig.tools.i18n.I18nManager; |
|
72 | 72 |
import org.gvsig.tools.persistence.PersistenceManager; |
73 | 73 |
import org.gvsig.tools.persistence.Persistent; |
74 | 74 |
import org.gvsig.tools.persistence.PersistentState; |
... | ... | |
112 | 112 |
protected boolean allowIndexDuplicateds = true; |
113 | 113 |
|
114 | 114 |
protected DynObjectValueItem[] availableValues; |
115 |
protected DynObjectValueItem[] availableValuesFromForeingKey; |
|
116 | 115 |
protected String description; |
117 | 116 |
protected Object minValue; |
118 | 117 |
protected Object maxValue; |
... | ... | |
778 | 777 |
@Override |
779 | 778 |
public DynObjectValueItem[] getAvailableValues() { |
780 | 779 |
if( this.availableValues == null ) { |
781 |
if( this.availableValuesFromForeingKey==null ) { |
|
782 |
if( this.isForeingKey() && this.foreingKey.isSelectable() ) { |
|
783 |
this.availableValuesFromForeingKey = this.foreingKey.getAvailableValues(null); |
|
784 |
} |
|
785 |
return this.availableValuesFromForeingKey; |
|
780 |
if( this.isForeingKey() && this.foreingKey.isClosedList() ) { |
|
781 |
return this.foreingKey.getAvailableValues(null); |
|
786 | 782 |
} |
787 | 783 |
} |
788 | 784 |
return this.availableValues; |
... | ... | |
995 | 991 |
} |
996 | 992 |
return this.label; |
997 | 993 |
} |
994 |
|
|
995 |
@Override |
|
996 |
public String getLocalizedLabel() { |
|
997 |
if( StringUtils.isBlank(this.label) ) { |
|
998 |
return this.getName(); |
|
999 |
} |
|
1000 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
|
1001 |
return i18n.getTranslation(this.label); |
|
1002 |
} |
|
998 | 1003 |
|
999 | 1004 |
@Override |
1000 | 1005 |
public DynField setLabel(String label) { |
... | ... | |
1014 | 1019 |
} |
1015 | 1020 |
|
1016 | 1021 |
@Override |
1022 |
public String getLocalizedShortLabel() { |
|
1023 |
if( StringUtils.isBlank(shortLabel) ) { |
|
1024 |
return this.getLocalizedLabel(); |
|
1025 |
} |
|
1026 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
|
1027 |
return i18n.getTranslation(shortLabel); |
|
1028 |
} |
|
1029 |
|
|
1030 |
@Override |
|
1017 | 1031 |
public DynField setGroup(String groupName) { |
1018 | 1032 |
this.groupName = groupName; |
1019 | 1033 |
return this; |
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/featureform/swing/impl/DefaultJFeaturesForm.java | ||
---|---|---|
107 | 107 |
|
108 | 108 |
} |
109 | 109 |
|
110 |
@Override |
|
110 | 111 |
public FeatureStore getFeatureStore() { |
111 | 112 |
return store; |
112 | 113 |
} |
... | ... | |
122 | 123 |
|
123 | 124 |
@Override |
124 | 125 |
public ResourcesStorage getResourcesStorage() { |
126 |
if( store == null ) { |
|
127 |
return null; |
|
128 |
} |
|
125 | 129 |
return store.getResourcesStorage(); |
126 | 130 |
} |
127 | 131 |
|
128 | 132 |
@Override |
129 | 133 |
public StoresRepository getStoresRepository() { |
134 |
if( store == null ) { |
|
135 |
return null; |
|
136 |
} |
|
130 | 137 |
return store.getStoresRepository(); |
131 | 138 |
} |
132 | 139 |
|
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/featureform/swing/impl/dynformfield/selectableforeingkey/JDynFormFieldSelectableForeingKeyFactory.java | ||
---|---|---|
76 | 76 |
if( foreingKey==null ) { |
77 | 77 |
return false; |
78 | 78 |
} |
79 |
return foreingKey.isForeingKey() && foreingKey.isSelectable();
|
|
79 |
return foreingKey.isForeingKey() && foreingKey.isClosedList();
|
|
80 | 80 |
} |
81 | 81 |
|
82 | 82 |
public static void selfRegister() { |
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/featureform/swing/impl/dynformfield/selectableforeingkey/JDynFormFieldSelectableForeingKey.java | ||
---|---|---|
70 | 70 |
@Override |
71 | 71 |
protected DynObjectValueItem[] getAvailableValues() { |
72 | 72 |
final ForeingKey foreingKey = this.getForeingKey(); |
73 |
if( foreingKey==null || !foreingKey.isSelectable() ) {
|
|
73 |
if( foreingKey==null || !foreingKey.isClosedList() ) {
|
|
74 | 74 |
return null; |
75 | 75 |
} |
76 | 76 |
DynObjectValueItem[] values = foreingKey.getAvailableValues(null); |
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/featureform/swing/impl/dynformfield/features/JDynFormFieldRelatedFeatures.java | ||
---|---|---|
107 | 107 |
if (attrdesc == null) { |
108 | 108 |
return "C" + columnIndex; |
109 | 109 |
} |
110 |
return attrdesc.getLabel(); |
|
110 |
return attrdesc.getLocalizedShortLabel();
|
|
111 | 111 |
} |
112 | 112 |
|
113 | 113 |
@Override |
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/featureform/swing/impl/dynformfield/linkforeingkey/JDynFormFieldForeingKeyFactory.java | ||
---|---|---|
71 | 71 |
if( foreingKey==null ) { |
72 | 72 |
return false; |
73 | 73 |
} |
74 |
return foreingKey.isForeingKey() && !foreingKey.isSelectable();
|
|
74 |
return foreingKey.isForeingKey() && !foreingKey.isClosedList();
|
|
75 | 75 |
} |
76 | 76 |
|
77 | 77 |
public static void selfRegister() { |
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/featureform/swing/impl/dynformfield/linkedentity/JDynFormFieldFeatureLink.java | ||
---|---|---|
33 | 33 |
import javax.swing.Icon; |
34 | 34 |
import javax.swing.ImageIcon; |
35 | 35 |
import javax.swing.JButton; |
36 |
import javax.swing.JComponent; |
|
36 | 37 |
import javax.swing.JPanel; |
37 | 38 |
import javax.swing.JTextField; |
38 | 39 |
import org.apache.commons.lang3.StringUtils; |
... | ... | |
252 | 253 |
@Override |
253 | 254 |
public void setReadOnly(boolean readonly) { |
254 | 255 |
boolean enabled = !readonly; |
255 |
// this.txtCode.setEnabled(enabled); |
|
256 |
JComponent theJlabel = this.getJLabel(); |
|
257 |
if( theJlabel !=null ) { |
|
258 |
theJlabel.setEnabled(enabled); |
|
259 |
} |
|
260 |
// this.txtCode.setEnabled(enabled); |
|
256 | 261 |
if( this.txtDescription == null ) { |
257 | 262 |
return; |
258 | 263 |
} |
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/searchpanel/SearchFieldController.java | ||
---|---|---|
80 | 80 |
int type |
81 | 81 |
) { |
82 | 82 |
super( |
83 |
ObjectUtils.defaultIfNull(label, attrdesc.getLabel()), |
|
83 |
ObjectUtils.defaultIfNull(label, attrdesc.getLocalizedLabel()),
|
|
84 | 84 |
ObjectUtils.defaultIfNull(value, attrdesc.getName()) |
85 | 85 |
); |
86 | 86 |
this.store = store; |
... | ... | |
95 | 95 |
case Search.OrderedAttribute.TYPE_REGURAL: |
96 | 96 |
break; |
97 | 97 |
case Search.OrderedAttribute.TYPE_FAVORITE: |
98 |
theLabel = "<b>"+theLabel+"</b>";
|
|
98 |
theLabel = "<html><b>"+theLabel+"</b></html>";
|
|
99 | 99 |
break; |
100 | 100 |
case Search.OrderedAttribute.TYPE_RECENT: |
101 |
theLabel = "<i><b>"+theLabel+"</b></i>";
|
|
101 |
theLabel = "<html><i><b>"+theLabel+"</b></i></html>";
|
|
102 | 102 |
break; |
103 | 103 |
} |
104 | 104 |
return theLabel; |
... | ... | |
181 | 181 |
this.lblExtraFields.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); |
182 | 182 |
|
183 | 183 |
this.ddnFields = toolsSwingManager.createDropDown(lblFields); |
184 |
this.ddnFields.setVisibleDropdownArrow(false); |
|
184 | 185 |
this.ddnRelationalOperators = toolsSwingManager.createDropDown(lblRelationalOperators); |
186 |
this.ddnRelationalOperators.setVisibleDropdownArrow(false); |
|
185 | 187 |
if (lblLogicalOperators != null) { |
186 | 188 |
this.ddnLogicalOperators = toolsSwingManager.createDropDown(lblLogicalOperators); |
189 |
this.ddnLogicalOperators.setVisibleDropdownArrow(false); |
|
187 | 190 |
} |
188 | 191 |
|
189 | 192 |
DefaultComboBoxModel modelRelationalOperators = new DefaultComboBoxModel(); |
... | ... | |
209 | 212 |
20 |
210 | 213 |
); |
211 | 214 |
List<ImageIcon>icons = new ArrayList<>(); |
212 |
DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager(); |
|
215 |
// DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager();
|
|
213 | 216 |
IconTheme iconTheme = ToolsSwingLocator.getIconThemeManager().getCurrent(); |
214 | 217 |
DefaultComboBoxModel model = new DefaultComboBoxModel(); |
215 | 218 |
for (Search.OrderedAttribute attr : orderedAttributes) { |
... | ... | |
263 | 266 |
final JTree tree = new JTree(); |
264 | 267 |
tree.setCellRenderer(new AdvancedAttributeSelectionTreeCellRenderer()); |
265 | 268 |
tree.setModel(treeModel); |
269 |
try { |
|
270 |
tree.setSelectionRow(1); |
|
271 |
} catch(Throwable th) { |
|
272 |
} |
|
266 | 273 |
JScrollPane scrollpane = new JScrollPane(tree); |
267 | 274 |
scrollpane.setPreferredSize(new Dimension(400, 300)); |
268 | 275 |
scrollpane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); |
... | ... | |
313 | 320 |
String formula = builder.function(DataManager.FUNCTION_FOREING_VALUE, list).toString(); |
314 | 321 |
String label = attrdesc.getLabel() + " [" + theStore.getName() + "]"; |
315 | 322 |
if (StringUtils.equalsIgnoreCase(storeFullName, this.store.getFullName())) { |
316 |
label = attrdesc.getLabel(); |
|
323 |
label = attrdesc.getLocalizedLabel();
|
|
317 | 324 |
formula = attrdesc.getName(); |
318 | 325 |
} |
319 | 326 |
FeatureAttribute attribute = new FeatureAttribute(theStore, attrdesc, label, formula, Search.OrderedAttribute.TYPE_REGURAL); |
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/searchpanel/AdvancedAttributeSelectionTreeModel.java | ||
---|---|---|
51 | 51 |
this.type = OrderedAttribute.TYPE_REGURAL; |
52 | 52 |
this.childs = new ArrayList<>(); |
53 | 53 |
for (OrderedAttribute attribute : attributes) { |
54 |
this.childs.add(new DefaultNode(store, attribute.getDescriptor(), this.type));
|
|
54 |
this.childs.add(new DefaultNode(store, attribute.getDescriptor(), attribute.getType()));
|
|
55 | 55 |
} |
56 | 56 |
} |
57 | 57 |
|
58 | 58 |
private DefaultNode(FeatureStore store, FeatureAttributeDescriptor attribute, int type) { |
59 |
super(attribute.getLabel(), attribute); |
|
59 |
super(attribute.getLocalizedLabel(), attribute);
|
|
60 | 60 |
this.store = store; |
61 | 61 |
this.type = type; |
62 | 62 |
this.childs = null; |
... | ... | |
76 | 76 |
case Search.OrderedAttribute.TYPE_REGURAL: |
77 | 77 |
break; |
78 | 78 |
case Search.OrderedAttribute.TYPE_FAVORITE: |
79 |
theLabel = "<b>"+theLabel+"</b>";
|
|
79 |
theLabel = "<html><b>"+theLabel+"</b></html>";
|
|
80 | 80 |
break; |
81 | 81 |
case Search.OrderedAttribute.TYPE_RECENT: |
82 |
theLabel = "<i><b>"+theLabel+"</b></i>";
|
|
82 |
theLabel = "<html><i><b>"+theLabel+"</b></i></html>";
|
|
83 | 83 |
break; |
84 | 84 |
} |
85 | 85 |
return theLabel; |
... | ... | |
103 | 103 |
ContextForeingKey context = foreingKey.createContext(); |
104 | 104 |
// Ojo, no liberamos el contexto para que no se destruya el store. |
105 | 105 |
FeatureStore theStore = foreingKey.getFeatureStore(context); |
106 |
FeatureType featureType = foreingKey.getFeatureType(context); |
|
107 |
String fullName = theStore.getFullName(); |
|
108 |
if (stores.contains(fullName)) { |
|
109 |
// Si ya hemos a?adido el store al arbol no lo volvemos a a?adir. |
|
106 |
if( theStore==null ) { |
|
110 | 107 |
this.childs = Collections.EMPTY_LIST; |
111 | 108 |
} else { |
112 |
Search featureTypeSearch = (Search) ToolsLocator.getComplementsManager().get( |
|
113 |
Search.COMPLEMENT_MANE, featureType |
|
114 |
); |
|
115 |
List<Search.OrderedAttribute> attributes = featureTypeSearch.getOrderedAttributes( |
|
116 |
filterByDataType, |
|
117 |
Search.LABEL_ORDER, |
|
118 |
-1 |
|
119 |
); |
|
120 |
this.childs = new ArrayList<>(); |
|
121 |
for (Search.OrderedAttribute attribute : attributes) { |
|
122 |
this.childs.add(new DefaultNode(theStore, attribute.getDescriptor(), attribute.getType())); |
|
109 |
FeatureType featureType = foreingKey.getFeatureType(context); |
|
110 |
String fullName = theStore.getFullName(); |
|
111 |
if (stores.contains(fullName)) { |
|
112 |
// Si ya hemos a?adido el store al arbol no lo volvemos a a?adir. |
|
113 |
this.childs = Collections.EMPTY_LIST; |
|
114 |
} else { |
|
115 |
Search featureTypeSearch = (Search) ToolsLocator.getComplementsManager().get( |
|
116 |
Search.COMPLEMENT_MANE, featureType |
|
117 |
); |
|
118 |
List<Search.OrderedAttribute> attributes = featureTypeSearch.getOrderedAttributes( |
|
119 |
filterByDataType, |
|
120 |
Search.LABEL_ORDER, |
|
121 |
-1 |
|
122 |
); |
|
123 |
this.childs = new ArrayList<>(); |
|
124 |
for (Search.OrderedAttribute attribute : attributes) { |
|
125 |
this.childs.add(new DefaultNode(theStore, attribute.getDescriptor(), attribute.getType())); |
|
126 |
} |
|
123 | 127 |
} |
124 | 128 |
} |
125 | 129 |
} else { |
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/searchpanel/DefaultSearchPanel.java | ||
---|---|---|
120 | 120 |
if (attrdesc == null) { |
121 | 121 |
return "C" + columnIndex; |
122 | 122 |
} |
123 |
return attrdesc.getLabel(); |
|
123 |
return attrdesc.getLocalizedShortLabel();
|
|
124 | 124 |
} |
125 | 125 |
|
126 | 126 |
@Override |
... | ... | |
133 | 133 |
if (attrdesc == null) { |
134 | 134 |
return String.class; |
135 | 135 |
} |
136 |
if( attrdesc.isForeingKey() && attrdesc.getForeingKey().isClosedList() ) { |
|
137 |
return String.class; |
|
138 |
} |
|
136 | 139 |
Class theClass = attrdesc.getDataType().getDefaultClass(); |
137 | 140 |
if( theClass==null ) { |
138 | 141 |
return String.class; |
... | ... | |
150 | 153 |
if (this.features == null) { |
151 | 154 |
return null; |
152 | 155 |
} |
153 |
Feature feature = this.features.get(rowIndex); |
|
154 |
String attrName = this.columnNames.get(columnIndex); |
|
155 | 156 |
try { |
156 |
return feature.get(attrName); |
|
157 |
Feature feature = this.features.get(rowIndex); |
|
158 |
String attrName = this.columnNames.get(columnIndex); |
|
159 |
Object value = feature.get(attrName); |
|
160 |
FeatureAttributeDescriptor attrdesc = this.featureType.getAttributeDescriptor(attrName); |
|
161 |
if (attrdesc != null) { |
|
162 |
if( attrdesc.isForeingKey() && attrdesc.getForeingKey().isClosedList() ) { |
|
163 |
value = attrdesc.getForeingKey().getLabelForValue(value); |
|
164 |
} |
|
165 |
} |
|
166 |
return value; |
|
157 | 167 |
} catch (Throwable th) { |
158 | 168 |
return null; |
159 | 169 |
} |
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 | ||
---|---|---|
82 | 82 |
private static class ForeingKeyController { |
83 | 83 |
|
84 | 84 |
private final JCheckBox chkIsForeingKey; |
85 |
private final JCheckBox chkIsSelectable;
|
|
85 |
private final JCheckBox chkIsClosedList;
|
|
86 | 86 |
private final JComboBox cboTable; |
87 | 87 |
private final JComboBox cboCode; |
88 | 88 |
private final JTextField txtFormula; |
... | ... | |
93 | 93 |
|
94 | 94 |
public ForeingKeyController( |
95 | 95 |
JCheckBox chkIsForeingKey, |
96 |
JCheckBox chkIsSelectable,
|
|
96 |
JCheckBox chkIsClosedList,
|
|
97 | 97 |
JComboBox cboTable, |
98 | 98 |
JComboBox cboCode, |
99 | 99 |
JTextField txtFormula, |
100 | 100 |
JButton btnFormula |
101 | 101 |
) { |
102 | 102 |
this.chkIsForeingKey = chkIsForeingKey; |
103 |
this.chkIsSelectable = chkIsSelectable;
|
|
103 |
this.chkIsClosedList = chkIsClosedList;
|
|
104 | 104 |
this.cboTable = cboTable; |
105 | 105 |
this.cboCode = cboCode; |
106 | 106 |
this.txtFormula = txtFormula; |
... | ... | |
191 | 191 |
|
192 | 192 |
public void setEditable(boolean editable) { |
193 | 193 |
this.chkIsForeingKey.setEnabled(editable); |
194 |
this.chkIsSelectable.setEnabled(editable);
|
|
194 |
this.chkIsClosedList.setEnabled(editable);
|
|
195 | 195 |
this.cboTable.setEnabled(editable); |
196 | 196 |
this.cboCode.setEnabled(editable); |
197 | 197 |
this.btnFormula.setEnabled(editable); |
... | ... | |
204 | 204 |
enabled = false; |
205 | 205 |
} |
206 | 206 |
this.chkIsForeingKey.setEnabled(enabled); |
207 |
this.chkIsSelectable.setEnabled(enabled);
|
|
207 |
this.chkIsClosedList.setEnabled(enabled);
|
|
208 | 208 |
this.cboTable.setEnabled(enabled); |
209 | 209 |
this.cboCode.setEnabled(enabled); |
210 | 210 |
this.btnFormula.setEnabled(enabled); |
... | ... | |
213 | 213 |
|
214 | 214 |
public void clean() { |
215 | 215 |
this.chkIsForeingKey.setSelected(false); |
216 |
this.chkIsSelectable.setSelected(false);
|
|
216 |
this.chkIsClosedList.setSelected(false);
|
|
217 | 217 |
this.cboTable.setSelectedItem(""); |
218 | 218 |
this.cboCode.setSelectedItem(""); |
219 | 219 |
this.pickerFormula.set(null); |
... | ... | |
225 | 225 |
return; |
226 | 226 |
} |
227 | 227 |
this.chkIsForeingKey.setSelected(foreingKey.isForeingKey()); |
228 |
this.chkIsSelectable.setSelected(foreingKey.isSelectable());
|
|
228 |
this.chkIsClosedList.setSelected(foreingKey.isClosedList());
|
|
229 | 229 |
this.cboTable.setSelectedItem(foreingKey.getTableName()); |
230 | 230 |
this.cboCode.setSelectedItem(foreingKey.getCodeName()); |
231 | 231 |
this.pickerFormula.set(foreingKey.getLabelExpression(null)); |
... | ... | |
236 | 236 |
return; |
237 | 237 |
} |
238 | 238 |
foreingKey.setForeingKey(this.chkIsForeingKey.isSelected()); |
239 |
foreingKey.setSelectable(this.chkIsSelectable.isSelected());
|
|
239 |
foreingKey.setClosedList(this.chkIsClosedList.isSelected());
|
|
240 | 240 |
foreingKey.setTableName((String) this.cboTable.getSelectedItem()); |
241 | 241 |
foreingKey.setCodeName((String) this.cboCode.getSelectedItem()); |
242 | 242 |
Expression exp = this.pickerFormula.get(); |
... | ... | |
522 | 522 |
swingManager.translate(this.lblForeingKeyCodeName); |
523 | 523 |
swingManager.translate(this.lblForeingKeyLabelFormula); |
524 | 524 |
swingManager.translate(this.lblForeingKeyTableName); |
525 |
swingManager.translate(this.lblIsSelectable);
|
|
525 |
swingManager.translate(this.lblIsClosedList);
|
|
526 | 526 |
swingManager.translate(this.chkIsForeingKey); |
527 | 527 |
|
528 | 528 |
swingManager.addClearButton(this.txtDefaultValue); |
... | ... | |
565 | 565 |
|
566 | 566 |
this.foreingKeyController = new ForeingKeyController( |
567 | 567 |
chkIsForeingKey, |
568 |
chkIsSelectable,
|
|
568 |
chkIsClosedList,
|
|
569 | 569 |
cboForeingKeyTableName, |
570 | 570 |
cboForeingKeyCodeName, |
571 | 571 |
txtForeingKeyFormula, |
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/FeatureTypeAttributePanelView.xml | ||
---|---|---|
25 | 25 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
26 | 26 |
</super> |
27 | 27 |
<at name="id">/home/jjdelcerro/datos/devel/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/FeatureTypeAttributePanelView.xml</at> |
28 |
<at name="path">datos/devel/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/FeatureTypeAttributePanelView.xml</at> |
|
29 | 28 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:NONE,CENTER:2DLU:NONE</at> |
30 | 29 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
31 | 30 |
<at name="components"> |
... | ... | |
135 | 134 |
</object> |
136 | 135 |
</at> |
137 | 136 |
<at name="name">txtFieldName</at> |
138 |
<at name="width">848</at>
|
|
137 |
<at name="width">872</at>
|
|
139 | 138 |
<at name="height">20</at> |
140 | 139 |
</object> |
141 | 140 |
</at> |
... | ... | |
249 | 248 |
</object> |
250 | 249 |
</at> |
251 | 250 |
<at name="name">cboFieldType</at> |
252 |
<at name="width">848</at>
|
|
251 |
<at name="width">872</at>
|
|
253 | 252 |
<at name="items"> |
254 | 253 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
255 | 254 |
<at name="name">items</at> |
... | ... | |
342 | 341 |
</at> |
343 | 342 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
344 | 343 |
</super> |
345 |
<at name="id">embedded.402481116</at>
|
|
344 |
<at name="id">embedded.1128307385</at>
|
|
346 | 345 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE</at> |
347 | 346 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
348 | 347 |
<at name="components"> |
... | ... | |
452 | 451 |
</object> |
453 | 452 |
</at> |
454 | 453 |
<at name="name">txtSize</at> |
455 |
<at name="width">782</at>
|
|
454 |
<at name="width">806</at>
|
|
456 | 455 |
<at name="height">20</at> |
457 | 456 |
</object> |
458 | 457 |
</at> |
... | ... | |
626 | 625 |
</object> |
627 | 626 |
</at> |
628 | 627 |
<at name="name">txtPrecision</at> |
629 |
<at name="width">782</at>
|
|
628 |
<at name="width">806</at>
|
|
630 | 629 |
<at name="height">20</at> |
631 | 630 |
</object> |
632 | 631 |
</at> |
... | ... | |
680 | 679 |
</object> |
681 | 680 |
</at> |
682 | 681 |
<at name="name">txtDefaultValue</at> |
683 |
<at name="width">782</at>
|
|
682 |
<at name="width">806</at>
|
|
684 | 683 |
<at name="height">20</at> |
685 | 684 |
</object> |
686 | 685 |
</at> |
... | ... | |
794 | 793 |
</object> |
795 | 794 |
</at> |
796 | 795 |
<at name="name">cboDataProfile</at> |
797 |
<at name="width">782</at>
|
|
796 |
<at name="width">806</at>
|
|
798 | 797 |
<at name="items"> |
799 | 798 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
800 | 799 |
<at name="name">items</at> |
... | ... | |
881 | 880 |
</at> |
882 | 881 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
883 | 882 |
</super> |
884 |
<at name="id">embedded.1031419293</at>
|
|
883 |
<at name="id">embedded.547041794</at>
|
|
885 | 884 |
<at name="rowspecs">CENTER:DEFAULT:NONE</at> |
886 | 885 |
<at name="colspecs">FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at> |
887 | 886 |
<at name="components"> |
... | ... | |
991 | 990 |
</object> |
992 | 991 |
</at> |
993 | 992 |
<at name="name">txtVirtualField</at> |
994 |
<at name="width">750</at>
|
|
993 |
<at name="width">774</at>
|
|
995 | 994 |
<at name="height">20</at> |
996 | 995 |
</object> |
997 | 996 |
</at> |
... | ... | |
1221 | 1220 |
</at> |
1222 | 1221 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
1223 | 1222 |
</super> |
1224 |
<at name="id">embedded.377352116</at>
|
|
1223 |
<at name="id">embedded.1682990620</at>
|
|
1225 | 1224 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at> |
1226 | 1225 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
1227 | 1226 |
<at name="components"> |
... | ... | |
1451 | 1450 |
</object> |
1452 | 1451 |
</at> |
1453 | 1452 |
<at name="name">cboGeometryType</at> |
1454 |
<at name="width">760</at>
|
|
1453 |
<at name="width">784</at>
|
|
1455 | 1454 |
<at name="items"> |
1456 | 1455 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
1457 | 1456 |
<at name="name">items</at> |
... | ... | |
1510 | 1509 |
</object> |
1511 | 1510 |
</at> |
1512 | 1511 |
<at name="name">cboGeometrySubtype</at> |
1513 |
<at name="width">760</at>
|
|
1512 |
<at name="width">784</at>
|
|
1514 | 1513 |
<at name="items"> |
1515 | 1514 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
1516 | 1515 |
<at name="name">items</at> |
... | ... | |
1541 | 1540 |
</at> |
1542 | 1541 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
1543 | 1542 |
</super> |
1544 |
<at name="id">embedded.1677462193</at>
|
|
1543 |
<at name="id">embedded.1289436125</at>
|
|
1545 | 1544 |
<at name="rowspecs">CENTER:DEFAULT:NONE</at> |
1546 | 1545 |
<at name="colspecs">FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at> |
1547 | 1546 |
<at name="components"> |
... | ... | |
1651 | 1650 |
</object> |
1652 | 1651 |
</at> |
1653 | 1652 |
<at name="name">txtCRS</at> |
1654 |
<at name="width">728</at>
|
|
1653 |
<at name="width">752</at>
|
|
1655 | 1654 |
<at name="height">20</at> |
1656 | 1655 |
</object> |
1657 | 1656 |
</at> |
... | ... | |
1872 | 1871 |
</at> |
1873 | 1872 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
1874 | 1873 |
</super> |
1875 |
<at name="id">embedded.1264804891</at>
|
|
1874 |
<at name="id">embedded.8208044</at>
|
|
1876 | 1875 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE</at> |
1877 | 1876 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
1878 | 1877 |
<at name="components"> |
... | ... | |
1985 | 1984 |
<at name="editable">true</at> |
1986 | 1985 |
<at name="requestFocusEnabled">false</at> |
1987 | 1986 |
<at name="name">cboDateFormat</at> |
1988 |
<at name="width">797</at>
|
|
1987 |
<at name="width">821</at>
|
|
1989 | 1988 |
<at name="items"> |
1990 | 1989 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
1991 | 1990 |
<at name="name">items</at> |
... | ... | |
2076 | 2075 |
</at> |
2077 | 2076 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
2078 | 2077 |
</super> |
2079 |
<at name="id">embedded.286427158</at>
|
|
2078 |
<at name="id">embedded.1310372468</at>
|
|
2080 | 2079 |
<at name="rowspecs">CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE</at> |
2081 | 2080 |
<at name="colspecs">FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at> |
2082 | 2081 |
<at name="components"> |
... | ... | |
2246 | 2245 |
</object> |
2247 | 2246 |
</at> |
2248 | 2247 |
<at name="name">txtIntervalStart</at> |
2249 |
<at name="width">720</at>
|
|
2248 |
<at name="width">744</at>
|
|
2250 | 2249 |
<at name="height">20</at> |
2251 | 2250 |
</object> |
2252 | 2251 |
</at> |
... | ... | |
2420 | 2419 |
</object> |
2421 | 2420 |
</at> |
2422 | 2421 |
<at name="name">txtIntervalEnd</at> |
2423 |
<at name="width">720</at>
|
|
2422 |
<at name="width">744</at>
|
|
2424 | 2423 |
<at name="height">20</at> |
2425 | 2424 |
</object> |
2426 | 2425 |
</at> |
... | ... | |
2624 | 2623 |
<at name="icon"> |
2625 | 2624 |
<object classname="com.jeta.forms.store.properties.IconProperty"> |
2626 | 2625 |
<at name="embedded">false</at> |
2627 |
<at name="description"></at> |
|
2628 | 2626 |
<at name="width">0</at> |
2629 | 2627 |
<at name="height">0</at> |
2630 | 2628 |
</object> |
... | ... | |
2645 | 2643 |
</at> |
2646 | 2644 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
2647 | 2645 |
</super> |
2648 |
<at name="id">embedded.Cb987a91Z16acb9ffe5cQL7ff4</at>
|
|
2646 |
<at name="id">embedded.916288048</at>
|
|
2649 | 2647 |
<at name="rowspecs">FILL:DEFAULT:GROW(1.0)</at> |
2650 | 2648 |
<at name="colspecs">FILL:DEFAULT:GROW(1.0)</at> |
2651 | 2649 |
<at name="components"> |
... | ... | |
2667 | 2665 |
</at> |
2668 | 2666 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
2669 | 2667 |
</super> |
2670 |
<at name="id">embedded.1015049037</at>
|
|
2668 |
<at name="id">embedded.1987863629</at>
|
|
2671 | 2669 |
<at name="rowspecs">FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE</at> |
2672 | 2670 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE</at> |
2673 | 2671 |
<at name="components"> |
... | ... | |
2840 | 2838 |
<at name="editable">true</at> |
2841 | 2839 |
<at name="requestFocusEnabled">false</at> |
2842 | 2840 |
<at name="name">cboTagsName</at> |
2843 |
<at name="width">730</at>
|
|
2841 |
<at name="width">754</at>
|
|
2844 | 2842 |
<at name="items"> |
2845 | 2843 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
2846 | 2844 |
<at name="name">items</at> |
... | ... | |
2899 | 2897 |
</object> |
2900 | 2898 |
</at> |
2901 | 2899 |
<at name="name">txtTagsValue</at> |
2902 |
<at name="width">730</at>
|
|
2900 |
<at name="width">754</at>
|
|
2903 | 2901 |
<at name="height">20</at> |
2904 | 2902 |
</object> |
2905 | 2903 |
</at> |
... | ... | |
2953 | 2951 |
</object> |
2954 | 2952 |
</at> |
2955 | 2953 |
<at name="name">tblTags</at> |
2956 |
<at name="width">778</at>
|
|
2954 |
<at name="width">802</at>
|
|
2957 | 2955 |
<at name="scollBars"> |
2958 | 2956 |
<object classname="com.jeta.forms.store.properties.ScrollBarsProperty"> |
2959 | 2957 |
<at name="name">scollBars</at> |
... | ... | |
3034 | 3032 |
</object> |
3035 | 3033 |
</at> |
3036 | 3034 |
<at name="name">lblTagsDescription</at> |
3037 |
<at name="width">730</at>
|
|
3035 |
<at name="width">754</at>
|
|
3038 | 3036 |
<at name="fill"> |
3039 | 3037 |
<object classname="com.jeta.forms.store.properties.effects.PaintProperty"> |
3040 | 3038 |
<at name="name">fill</at> |
... | ... | |
3065 | 3063 |
</at> |
3066 | 3064 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
3067 | 3065 |
</super> |
3068 |
<at name="id">embedded.1904489293</at>
|
|
3066 |
<at name="id">embedded.429175123</at>
|
|
3069 | 3067 |
<at name="rowspecs">CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE</at> |
3070 | 3068 |
<at name="colspecs">FILL:DEFAULT:NONE</at> |
3071 | 3069 |
<at name="components"> |
... | ... | |
3349 | 3347 |
</at> |
3350 | 3348 |
</object> |
3351 | 3349 |
</at> |
3352 |
<at name="name"></at>
|
|
3350 |
<at name="name"/>
|
|
3353 | 3351 |
<at name="fill"> |
3354 | 3352 |
<object classname="com.jeta.forms.store.properties.effects.PaintProperty"> |
3355 | 3353 |
<at name="name">fill</at> |
... | ... | |
3446 | 3444 |
</at> |
3447 | 3445 |
</object> |
3448 | 3446 |
</at> |
3449 |
<at name="name"></at>
|
|
3447 |
<at name="name"/>
|
|
3450 | 3448 |
<at name="fill"> |
3451 | 3449 |
<object classname="com.jeta.forms.store.properties.effects.PaintProperty"> |
3452 | 3450 |
<at name="name">fill</at> |
... | ... | |
3457 | 3455 |
<at name="name">scollBars</at> |
3458 | 3456 |
<at name="verticalpolicy">21</at> |
3459 | 3457 |
<at name="horizontalpolicy">31</at> |
3458 |
<at name="border"> |
|
3459 |
<object classname="com.jeta.forms.store.properties.CompoundBorderProperty"> |
|
3460 |
<super classname="com.jeta.forms.store.properties.BorderProperty"> |
|
3461 |
<at name="name">border</at> |
|
3462 |
</super> |
|
3463 |
<at name="borders"> |
|
3464 |
<object classname="java.util.LinkedList"> |
|
3465 |
<item > |
|
3466 |
<at name="value"> |
|
3467 |
<object classname="com.jeta.forms.store.properties.DefaultBorderProperty"> |
|
3468 |
<super classname="com.jeta.forms.store.properties.BorderProperty"> |
|
3469 |
<at name="name">border</at> |
|
3470 |
</super> |
|
3471 |
</object> |
|
3472 |
</at> |
|
3473 |
</item> |
|
3474 |
</object> |
|
3475 |
</at> |
|
3476 |
</object> |
|
3477 |
</at> |
|
3460 | 3478 |
</object> |
3461 | 3479 |
</at> |
3462 | 3480 |
</object> |
... | ... | |
3521 | 3539 |
</at> |
3522 | 3540 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
3523 | 3541 |
</super> |
3524 |
<at name="id">embedded.234699514</at>
|
|
3542 |
<at name="id">embedded.2112083385</at>
|
|
3525 | 3543 |
<at name="rowspecs">CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at> |
3526 | 3544 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE</at> |
3527 | 3545 |
<at name="components"> |
... | ... | |
3572 | 3590 |
</at> |
3573 | 3591 |
<at name="actionCommand">_is_foreing_key</at> |
3574 | 3592 |
<at name="name">chkIsForeingKey</at> |
3575 |
<at name="width">829</at>
|
|
3593 |
<at name="width">853</at>
|
|
3576 | 3594 |
<at name="text">_is_foreing_key</at> |
3577 | 3595 |
<at name="height">16</at> |
3578 | 3596 |
</object> |
... | ... | |
3810 | 3828 |
<at name="editable">true</at> |
3811 | 3829 |
<at name="requestFocusEnabled">false</at> |
3812 | 3830 |
<at name="name">cboForeingKeyTableName</at> |
3813 |
<at name="width">787</at>
|
|
3831 |
<at name="width">811</at>
|
|
3814 | 3832 |
<at name="items"> |
3815 | 3833 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
3816 | 3834 |
<at name="name">items</at> |
... | ... | |
3872 | 3890 |
<at name="editable">true</at> |
3873 | 3891 |
<at name="requestFocusEnabled">false</at> |
3874 | 3892 |
<at name="name">cboForeingKeyCodeName</at> |
3875 |
<at name="width">787</at>
|
|
3893 |
<at name="width">811</at>
|
|
3876 | 3894 |
<at name="items"> |
3877 | 3895 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
3878 | 3896 |
<at name="name">items</at> |
... | ... | |
3931 | 3949 |
</object> |
3932 | 3950 |
</at> |
3933 | 3951 |
<at name="name">txtForeingKeyFormula</at> |
3934 |
<at name="width">732</at>
|
|
3952 |
<at name="width">756</at>
|
|
3935 | 3953 |
<at name="height">20</at> |
3936 | 3954 |
</object> |
3937 | 3955 |
</at> |
... | ... | |
4040 | 4058 |
</at> |
4041 | 4059 |
</object> |
4042 | 4060 |
</at> |
4043 |
<at name="name">lblIsSelectable</at>
|
|
4061 |
<at name="name">lblIsClosedList</at>
|
|
4044 | 4062 |
<at name="width">86</at> |
4045 |
<at name="text">_is_seletable</at>
|
|
4063 |
<at name="text">_is_closed_list</at>
|
|
4046 | 4064 |
<at name="fill"> |
4047 | 4065 |
<object classname="com.jeta.forms.store.properties.effects.PaintProperty"> |
4048 | 4066 |
<at name="name">fill</at> |
... | ... | |
4100 | 4118 |
</at> |
4101 | 4119 |
</object> |
4102 | 4120 |
</at> |
4103 |
<at name="name">chkIsSelectable</at>
|
|
4104 |
<at name="width">732</at>
|
|
4121 |
<at name="name">chkIsClosedList</at>
|
|
4122 |
<at name="width">756</at>
|
|
4105 | 4123 |
<at name="height">15</at> |
4106 | 4124 |
</object> |
4107 | 4125 |
</at> |
... | ... | |
4252 | 4270 |
</at> |
4253 | 4271 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
4254 | 4272 |
</super> |
4255 |
<at name="id">embedded.873481752</at>
|
|
4273 |
<at name="id">embedded.1306975728</at>
|
|
4256 | 4274 |
<at name="rowspecs">FILL:DEFAULT:GROW(1.0)</at> |
4257 | 4275 |
<at name="colspecs">FILL:DEFAULT:GROW(1.0)</at> |
4258 | 4276 |
<at name="components"> |
... | ... | |
4337 | 4355 |
</at> |
4338 | 4356 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
4339 | 4357 |
</super> |
4340 |
<at name="id">embedded.1757209369</at>
|
|
4358 |
<at name="id">embedded.1111542043</at>
|
|
4341 | 4359 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.2)</at> |
4342 | 4360 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
4343 | 4361 |
<at name="components"> |
... | ... | |
4510 | 4528 |
<at name="editable">true</at> |
4511 | 4529 |
<at name="requestFocusEnabled">false</at> |
4512 | 4530 |
<at name="name">cboGroup</at> |
4513 |
<at name="width">710</at>
|
|
4531 |
<at name="width">734</at>
|
|
4514 | 4532 |
<at name="items"> |
4515 | 4533 |
<object classname="com.jeta.forms.store.properties.ItemsProperty"> |
4516 | 4534 |
<at name="name">items</at> |
... | ... | |
4569 | 4587 |
</object> |
4570 | 4588 |
</at> |
4571 | 4589 |
<at name="name">txtOrder</at> |
4572 |
<at name="width">710</at>
|
|
4590 |
<at name="width">734</at>
|
|
4573 | 4591 |
<at name="height">20</at> |
4574 | 4592 |
</object> |
4575 | 4593 |
</at> |
... | ... | |
4683 | 4701 |
</object> |
4684 | 4702 |
</at> |
4685 | 4703 |
<at name="name">chkHidden</at> |
4686 |
<at name="width">710</at>
|
|
4704 |
<at name="width">734</at>
|
|
4687 | 4705 |
<at name="height">15</at> |
4688 | 4706 |
</object> |
4689 | 4707 |
</at> |
... | ... | |
4797 | 4815 |
</object> |
4798 | 4816 |
</at> |
4799 | 4817 |
<at name="name">txtLabel</at> |
4800 |
<at name="width">710</at>
|
|
4818 |
<at name="width">734</at>
|
|
4801 | 4819 |
<at name="height">20</at> |
4802 | 4820 |
</object> |
4803 | 4821 |
</at> |
... | ... | |
4914 | 4932 |
<at name="scrollableTracksViewportHeight">true</at> |
4915 | 4933 |
<at name="scrollableTracksViewportWidth">true</at> |
4916 | 4934 |
<at name="name">txtDescription</at> |
4917 |
<at name="width">708</at>
|
|
4935 |
<at name="width">732</at>
|
|
4918 | 4936 |
<at name="scollBars"> |
4919 | 4937 |
<object classname="com.jeta.forms.store.properties.ScrollBarsProperty"> |
4920 | 4938 |
<at name="name">scollBars</at> |
... | ... | |
5089 | 5107 |
</at> |
5090 | 5108 |
<at name="componentclass">com.jeta.forms.gui.form.FormComponent</at> |
5091 | 5109 |
</super> |
5092 |
<at name="id">embedded.1557366099</at>
|
|
5110 |
<at name="id">embedded.547348991</at>
|
|
5093 | 5111 |
<at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:4DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE</at> |
5094 | 5112 |
<at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at> |
5095 | 5113 |
<at name="components"> |
... | ... | |
5199 | 5217 |
</object> |
5200 | 5218 |
</at> |
5201 | 5219 |
<at name="name">txtMinValue</at> |
5202 |
<at name="width">684</at>
|
|
5220 |
<at name="width">708</at>
|
|
5203 | 5221 |
<at name="height">20</at> |
5204 | 5222 |
</object> |
5205 | 5223 |
</at> |
... | ... | |
5313 | 5331 |
</object> |
5314 | 5332 |
</at> |
Also available in: Unified diff