Revision 45739

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.api/src/main/java/org/gvsig/fmap/dal/swing/DataSwingManager.java
31 31
import javax.swing.JComboBox;
32 32
import javax.swing.JList;
33 33
import javax.swing.JTextField;
34
import javax.swing.ListCellRenderer;
35 34
import javax.swing.table.TableModel;
36 35
import javax.swing.text.JTextComponent;
37
import org.cresques.cts.IProjection;
38 36
import org.gvsig.expressionevaluator.swing.ExpressionBuilderConfig;
39 37
import org.gvsig.expressionevaluator.swing.ExpressionPickerController;
40 38
import org.gvsig.expressionevaluator.swing.JExpressionBuilder;
......
60 58
import org.gvsig.fmap.dal.swing.jdbc.JDBCConnectionDialog;
61 59
import org.gvsig.fmap.dal.swing.searchpanel.SearchConditionPanel.SearchConditionPanelFactory;
62 60
import org.gvsig.fmap.dal.swing.featurequery.FeatureQueryOrderPanel;
61
import org.gvsig.fmap.dal.swing.featuretype.FeatureAttributeListCellRenderer;
63 62
import org.gvsig.fmap.dal.swing.featuretype.FeatureAttributesSelectionPanel;
64 63

  
65 64
import org.gvsig.fmap.dal.swing.searchPostProcess.SearchPostProcessFactory;
......
145 144
    
146 145
    public TableModel createSimpleFeaturesTableModel(FeatureType featureType, List<String> columnNames, List<Feature> features);
147 146

  
148
    public ListCellRenderer createDefaultFeatureAttributeListCellRenderer();
147
    public FeatureAttributeListCellRenderer createDefaultFeatureAttributeListCellRenderer();
149 148
    
150 149
    public FeatureQueryOrderPanel createFeatureStoreOrderPanel();
151 150

  
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.api/src/main/java/org/gvsig/fmap/dal/swing/featuretype/FeatureTypePanel.java
41 41
    
42 42
    public int getMode();
43 43

  
44
    public boolean isModifyingAField();
44
    public boolean isEditing();
45 45
}
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.api/src/main/java/org/gvsig/fmap/dal/swing/featuretype/FeatureAttributeListCellRenderer.java
1
package org.gvsig.fmap.dal.swing.featuretype;
2

  
3
import javax.swing.ListCellRenderer;
4

  
5
/**
6
 *
7
 * @author gvSIG Team
8
 */
9
public interface FeatureAttributeListCellRenderer extends ListCellRenderer<Object> {
10
    
11
    public void setUseLabeld(int useLabels);
12
    
13
    public int getUseLabels();
14
}
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
80 80
    }
81 81

  
82 82
    public static void selfRegister() {
83
        DynFormSPIManager manager = DynFormSPILocator.getDynFormSPIManager();
84
        manager.registerDynFieldFactory(new JDynFormFieldSelectableForeingKeyFactory());
83
//        DynFormSPIManager manager = DynFormSPILocator.getDynFormSPIManager();
84
//        manager.registerDynFieldFactory(new JDynFormFieldSelectableForeingKeyFactory());
85 85
    }
86 86

  
87 87
}
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/DefaultDataSwingManager.java
35 35
import javax.swing.JComboBox;
36 36
import javax.swing.JList;
37 37
import javax.swing.JTextField;
38
import javax.swing.ListCellRenderer;
39 38
import javax.swing.table.TableModel;
40 39
import javax.swing.text.JTextComponent;
41 40
import org.apache.commons.lang3.StringUtils;
......
95 94
import org.gvsig.fmap.dal.swing.DALActionFactory.DALActionContext;
96 95
import org.gvsig.fmap.dal.swing.ProjectionPickerController;
97 96
import org.gvsig.fmap.dal.swing.impl.featuretable.SimpleFeaturesTableModelImpl;
98
import org.gvsig.fmap.dal.swing.impl.featuretype.FeatureAttributeListCellRenderer;
97
import org.gvsig.fmap.dal.swing.impl.featuretype.FeatureAttributeListCellRendererImpl;
99 98
import org.gvsig.fmap.dal.swing.impl.featuretype.DefaultFeatureAttributesSelectionPanel;
100 99
import org.gvsig.fmap.dal.swing.impl.jdbc.DefaultJDBCConnectionDialog;
101 100
import org.gvsig.fmap.dal.swing.impl.jdbc.JDBCConnectionPickerController;
......
104 103
import org.gvsig.fmap.dal.swing.searchpanel.SearchConditionPanel.SearchConditionPanelFactory;
105 104
import org.gvsig.tools.swing.api.pickercontroller.PickerController;
106 105
import org.gvsig.fmap.dal.swing.featurequery.FeatureQueryOrderPanel;
106
import org.gvsig.fmap.dal.swing.featuretype.FeatureAttributeListCellRenderer;
107 107
import org.gvsig.fmap.dal.swing.featuretype.FeatureAttributesSelectionPanel;
108 108
import org.gvsig.fmap.dal.swing.impl.expressionevaluator.suggestions.CheckTableFieldsSuggestionProviderFactory;
109 109
import org.gvsig.fmap.dal.swing.impl.expressionevaluator.suggestions.QuotesForFieldNameSuggestionProviderFactory;
......
121 121
public class DefaultDataSwingManager implements DataSwingManager {
122 122

  
123 123
    private final Map<String,DALActionFactory> featureStoreSearchActions;
124
    private final Map<String,SearchPostProcessFactory> searchPostProcess;
124 125
    private Map<String,SearchConditionPanelFactory> searchConditionPanelFactories;
125
    private Map<String,SearchPostProcessFactory> searchPostProcess;
126 126
    
127 127
    public DefaultDataSwingManager() {
128 128
        this.featureStoreSearchActions = new LinkedHashMap<>();
......
421 421
    }
422 422
    
423 423
    @Override
424
    public ListCellRenderer createDefaultFeatureAttributeListCellRenderer() {
425
        ListCellRenderer r = new FeatureAttributeListCellRenderer();
424
    public FeatureAttributeListCellRenderer createDefaultFeatureAttributeListCellRenderer() {
425
        FeatureAttributeListCellRenderer r = new FeatureAttributeListCellRendererImpl();
426 426
        return r;
427 427
    }
428 428

  
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/featurequery/DefaultFeatureQueryGroupByPanel.java
29 29
import org.gvsig.fmap.dal.feature.FeatureStore;
30 30
import org.gvsig.fmap.dal.feature.FeatureStoreProviderFactory;
31 31
import org.gvsig.fmap.dal.feature.FeatureType;
32
import org.gvsig.fmap.dal.swing.impl.featuretype.FeatureAttributeListCellRenderer;
32
import org.gvsig.fmap.dal.swing.impl.featuretype.FeatureAttributeListCellRendererImpl;
33 33
import org.gvsig.fmap.dal.swing.impl.featuretype.DefaultFeatureAttributesSelectionPanel;
34 34
import org.gvsig.tools.dataTypes.DataType;
35 35
import org.gvsig.tools.swing.api.FilteredListController;
......
47 47
        extends DefaultFeatureQueryGroupByPanelView
48 48
        implements FeatureQueryGroupByPanel {
49 49

  
50
  private class AttributesWithAggregateRenderer extends FeatureAttributeListCellRenderer {
50
  private class AttributesWithAggregateRenderer extends FeatureAttributeListCellRendererImpl {
51 51

  
52 52
    @Override
53 53
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
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/featuretable/table/DynFieldFacadeOfAFeatureAttributeDescriptor.java
785 785
    }
786 786

  
787 787
    @Override
788
    public Expression getAvailableValuesFilter() {
789
        return null;
790
    }
791

  
792
    @Override
788 793
    public Object getCoercedDefaultValue() {
789 794
        return ((DynField_v2)this.field).getCoercedDefaultValue();
790 795
    }
791

  
792 796
}
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/FeatureAttributeListCellRenderer.java
1
package org.gvsig.fmap.dal.swing.impl.featuretype;
2

  
3
import java.awt.Component;
4
import javax.swing.DefaultListCellRenderer;
5
import javax.swing.JLabel;
6
import javax.swing.JList;
7
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
8
import org.gvsig.tools.swing.api.ToolsSwingLocator;
9
import org.gvsig.tools.swing.icontheme.IconTheme;
10

  
11
/**
12
 *
13
 * @author jjdelcerro
14
 */
15
public class FeatureAttributeListCellRenderer 
16
        extends DefaultListCellRenderer
17
    {
18

  
19
    private final IconTheme iconTheme;
20

  
21
    public FeatureAttributeListCellRenderer() {
22
        this.iconTheme = ToolsSwingLocator.getIconThemeManager().getCurrent();
23
    }
24
    
25
    @Override
26
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
27
        JLabel label = (JLabel) super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
28
        FeatureAttributeDescriptor attrdesc = (FeatureAttributeDescriptor) value;
29
        String theLabel;
30
        try {
31
            if (attrdesc.hasLabel()) {
32
                theLabel = String.format("%s [%s]", attrdesc.getLocalizedLabel(), attrdesc.getName());
33
            } else {
34
                theLabel = attrdesc.getName();
35
            }
36
            label.setText(theLabel);
37
            String iconName = attrdesc.getDataType().getIconName();
38
            if (iconTheme.exists(iconName)) {
39
                label.setIcon(iconTheme.get(iconName));
40
            } else {
41
                label.setIcon(null);
42
            }
43
        } catch (Exception ex) {
44
            label.setText("#ERROR#");
45
        }
46
        return label;
47
    }
48
    
49
}
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/DefaultAggregateController.java
1
package org.gvsig.fmap.dal.swing.impl.featuretype;
2

  
3
import java.awt.event.ActionEvent;
4
import java.util.Iterator;
5
import javax.swing.JButton;
6
import javax.swing.JOptionPane;
7
import javax.swing.JTable;
8
import javax.swing.event.ListSelectionEvent;
9
import org.apache.commons.lang3.ArrayUtils;
10
import org.gvsig.tools.ToolsLocator;
11
import org.gvsig.tools.i18n.I18nManager;
12
import org.gvsig.tools.swing.api.ChangeListenerHelper;
13
import org.gvsig.tools.swing.api.ToolsSwingLocator;
14
import org.gvsig.tools.swing.api.ToolsSwingManager;
15

  
16
/**
17
 *
18
 * @author gvSIG Team
19
 * @param <T>
20
 */
21
public class DefaultAggregateController<T> implements AggregateController<T> {
22
    
23
    private final JTable table;
24
    private final JButton btnModify;
25
    private final JButton btnDiscard;
26
    private final JButton btnAccept;
27
    private final JButton btnNew;
28
    private final JButton btnDelete;
29
    
30
    private final AggregateItemController<T> itemController;
31
    private AggregateModel<T> model;
32
    private boolean canCreate;
33
    private boolean canModify;
34
    private boolean canDelete;
35
    private ChangeListenerHelper changeListenerHelper;
36
    private int currentRow;
37
    private boolean editingItem;
38
    private boolean newItem;
39
    
40

  
41
    public DefaultAggregateController(
42
            JTable table,
43
            JButton btnFormFieldModify,
44
            JButton btnFormFieldDiscard,
45
            JButton btnFormFieldAccept,
46
            JButton btnNew,
47
            JButton btnDelete,
48
            AggregateItemController<T> itemController
49
    ) {
50
        this.table = table;
51
        this.btnModify = btnFormFieldModify;
52
        this.btnDiscard = btnFormFieldDiscard;
53
        this.btnAccept = btnFormFieldAccept;
54
        this.btnNew = btnNew;
55
        this.btnDelete = btnDelete;
56
        
57
        this.itemController = itemController;
58
        this.model = EMPTY_MODEL;
59
        this.editingItem = false;
60
        this.newItem = false;
61
        this.currentRow = -1;
62

  
63
        initComponents();
64
    }
65

  
66
    private void initComponents() {
67
        ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager();
68

  
69
        this.changeListenerHelper = swingManager.createChangeListenerHelper();
70

  
71
        swingManager.translate(this.btnAccept);
72
        swingManager.translate(this.btnDiscard);
73
        swingManager.translate(this.btnModify);
74
        swingManager.translate(this.btnNew);
75
        swingManager.translate(this.btnDelete);
76

  
77
        this.table.setModel(this.model);
78
        this.table.getSelectionModel().addListSelectionListener((ListSelectionEvent e) -> {
79
            if (e.getValueIsAdjusting()) {
80
                return;
81
            }
82
            doChangeItemSelection();
83
        });
84
        this.btnModify.addActionListener((ActionEvent e) -> {
85
            modifyCurrentItem();
86
        });
87
        this.btnDiscard.addActionListener((ActionEvent e) -> {
88
            discardModificactions();
89
        });
90
        this.btnAccept.addActionListener((ActionEvent e) -> {
91
            acceptModifications();
92
        });
93
        this.btnNew.addActionListener((ActionEvent e) -> {
94
            newItem();
95
        });
96
        this.btnDelete.addActionListener((ActionEvent e) -> {
97
            deleteCurrentItem();
98
        });
99

  
100
    }
101

  
102
    @Override
103
    public void setModel(AggregateModel<T> model) {
104
        this.model = model;
105
        this.table.setModel(model);
106
        this.currentRow = -1;
107
        this.newItem = false;
108
        this.setEditing(false);
109
    }
110

  
111
    @Override
112
    public AggregateModel<T> getModel() {
113
        return this.model;
114
    }
115
    
116
    @Override
117
    public AggregateItemController<T> getItemController() {
118
        return this.itemController;
119
    }
120

  
121
    @Override
122
    public int getCurrentRow() {
123
        return currentRow;
124
    }
125
        
126
    private void doChangeItemSelection() {
127
        int row = this.table.getSelectedRow();
128
        if (row < 0) {
129
            return;
130
        }
131
        if (this.editingItem) {
132
            if (row != this.currentRow) {
133
                I18nManager i18n = ToolsLocator.getI18nManager();
134
                JOptionPane.showMessageDialog(
135
                        this.table,
136
                        i18n.getTranslation("_Before_changing_selected_item_accept_or_discard_the_changes"),
137
                        i18n.getTranslation("_Warning"),
138
                        JOptionPane.WARNING_MESSAGE
139
                );
140
                this.setCurrentRow(this.currentRow);
141
            }
142
            return;
143
        }
144
        this.setCurrentRow(row);
145
    }
146

  
147
    @Override
148
    public void newItem() {
149
        this.setCurrentRow(-1);
150
        this.setEditing(true);
151
        this.newItem = true;
152
        this.changeListenerHelper.fireEvent();
153
    }
154

  
155
    @Override
156
    public void modifyCurrentItem() {
157
        int row = this.currentRow;
158
        if (row < 0) {
159
            return;
160
        }
161
        this.setCurrentRow(row);
162
        this.setEditing(true);
163
        this.newItem = false;
164
        this.changeListenerHelper.fireEvent();
165
    }
166

  
167
    @Override
168
    public void deleteCurrentItem() {
169
        int row = this.currentRow;
170
        int[] rows = this.table.getSelectedRows();
171

  
172
        int n = 0;
173
        Iterator<T> it = model.iterator();
174
        while (it.hasNext()) {
175
            if (ArrayUtils.contains(rows, n++)) {
176
                it.remove();
177
            }
178
        }
179
        this.setEditing(false);
180
        this.setCurrentRow(row);
181
        this.table.updateUI();
182
        this.changeListenerHelper.fireEvent();
183
    }
184

  
185
    @Override
186
    public void acceptModifications() {
187
        if( !this.editingItem ) {
188
            return;
189
        }
190
        if (this.newItem) {
191
            T item = this.model.createItem();
192
            if (this.itemController.fetch(item)) {
193
                this.model.addItem(item);
194
                this.setEditing(false);
195
                this.setCurrentRow(this.model.getRowCount());
196
                this.newItem = false;
197
            }
198
        } else {
199
            int row = this.currentRow;
200
            if (row < 0) {
201
                return;
202
            }
203
            T item = this.model.get(row);
204
            if (this.itemController.fetch(item)) {
205
                this.setEditing(false);
206
                this.setCurrentRow(row);
207
            }
208
        }
209
        this.changeListenerHelper.fireEvent();
210
    }
211

  
212
    @Override
213
    public void discardModificactions() {
214
        if( !this.editingItem ) {
215
            return;
216
        }
217
        int row = this.currentRow;
218
        if (row < 0) {
219
            return;
220
        }
221
        this.setEditing(false);
222
        this.setCurrentRow(row);
223
        this.newItem = false;
224
        this.changeListenerHelper.fireEvent();
225
    }
226

  
227
    private void setEditing(boolean editing) {
228
        this.editingItem = editing;
229
        this.itemController.setEnabled(editing);
230
        this.btnAccept.setEnabled(this.canModify() && editing);
231
        this.btnDiscard.setEnabled(editing);
232
        this.btnModify.setEnabled(this.canModify() && !editing);
233
        this.btnDelete.setEnabled(this.canDelete() && !editing);
234
        if( this.currentRow>=0 ) {
235
            this.btnNew.setEnabled(this.canCreate() && !editing);
236
        } else {
237
            this.btnNew.setEnabled(false);
238
        }
239
    }
240
    
241
    @Override
242
    public boolean isEditing() {
243
        return this.editingItem;
244
    }
245

  
246
    @Override
247
    public void setCurrentRow(int row) {
248
        if( this.editingItem ) {
249
            return;
250
        }
251
        if( row<0 ) {
252
            this.table.getSelectionModel().removeIndexInterval(0, this.model.getRowCount()-1);
253
            this.itemController.clean();
254
            return;
255
        } 
256
        if (row >= this.table.getRowCount()) {
257
            row = this.table.getRowCount() - 1;
258
        }
259
        T item = this.model.get(row);
260
        this.itemController.put(item);
261
        this.currentRow = row;
262
        this.table.getSelectionModel().setSelectionInterval(row, row);
263
        this.table.scrollRectToVisible(this.table.getCellRect(row, 0, true));
264
    }
265

  
266
    @Override
267
    public void setCanCreate(boolean canCreate) {
268
        this.canCreate = canCreate;
269
    }
270

  
271
    @Override
272
    public void setCanModify(boolean canModify) {
273
        this.canModify = canModify;
274
    }
275

  
276
    @Override
277
    public void setCanDelete(boolean canDelete) {
278
        this.canDelete = canDelete;
279
    }
280
    
281
    @Override
282
    public boolean canCreate() {
283
        return this.canCreate;
284
    }
285
    
286
    @Override
287
    public boolean canModify() {
288
        return this.canModify;
289
    }
290
    
291
    @Override
292
    public boolean canDelete() {
293
        return this.canDelete;
294
    }
295

  
296
}
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/DefaultFeatureAttributePanelView.java
70 70
   JComboBox cboTagsName = new JComboBox();
71 71
   JLabel lblTagsValue = new JLabel();
72 72
   JComboBox cboTagsValue = new JComboBox();
73
   JLabel lbTagsLabelDescription = new JLabel();
74
   JLabel lblTagsDescription = new JLabel();
73 75
   JButton btnTagsAdd = new JButton();
74 76
   JButton btnTagsUpdate = new JButton();
75 77
   JButton btnTagsRemove = new JButton();
76
   JLabel lbTagsLabelDescription = new JLabel();
77
   JLabel lblTagsDescription = new JLabel();
78 78
   JCheckBox chkIsForeingKey = new JCheckBox();
79 79
   JLabel lblForeingKeyTableName = new JLabel();
80 80
   JLabel lblForeingKeyCodeName = new JLabel();
......
104 104
   JTextField txtAvailableValuesLabel = new JTextField();
105 105
   JLabel lblAvailableValuesValue = new JLabel();
106 106
   JTextField txtAvailableValuesValue = new JTextField();
107
   JLabel lblValuesFilter = new JLabel();
107 108
   JButton btnAvailableValuesAdd = new JButton();
108 109
   JButton btnAvailableValuesUpdate = new JButton();
109 110
   JButton btnAvailableValuesRemove = new JButton();
110 111
   JButton btnAvailableValuesRemoveAll = new JButton();
112
   JTextField txtValuesFilter = new JTextField();
113
   JButton btnValuesFilter = new JButton();
114
   JButton btnValuesFilterHistory = new JButton();
115
   JButton btnValuesFilterBookmarks = new JButton();
111 116
   JLabel lblIsPrimaryKey = new JLabel();
112 117
   JCheckBox chkIsPrimaryKey = new JCheckBox();
113 118
   JLabel lblIsAutomatic = new JLabel();
......
231 236
      tabAditionalFields.addTab("_Visualization",null,createPanel10());
232 237
      jpanel1.add(tabAditionalFields,cc.xywh(2,8,3,1));
233 238

  
234
      jpanel1.add(createPanel14(),cc.xy(4,6));
235
      jpanel1.add(createPanel15(),cc.xy(4,4));
239
      jpanel1.add(createPanel15(),cc.xy(4,6));
240
      jpanel1.add(createPanel16(),cc.xy(4,4));
236 241
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5 },new int[]{ 1,2,3,4,5,6,7,8,9 });
237 242
      return jpanel1;
238 243
   }
......
318 323

  
319 324
      btnVirtualFieldBookmarks.setActionCommand("...");
320 325
      btnVirtualFieldBookmarks.setName("btnVirtualFieldBookmarks");
321
      btnVirtualFieldBookmarks.setOpaque(false);
322 326
      btnVirtualFieldBookmarks.setText("...");
323 327
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
324 328
      btnVirtualFieldBookmarks.setBorder(emptyborder1);
......
329 333

  
330 334
      btnVirtualFieldHistory.setActionCommand("...");
331 335
      btnVirtualFieldHistory.setName("btnVirtualFieldHistory");
332
      btnVirtualFieldHistory.setOpaque(false);
333 336
      btnVirtualFieldHistory.setText("...");
334 337
      EmptyBorder emptyborder2 = new EmptyBorder(2,2,2,2);
335 338
      btnVirtualFieldHistory.setBorder(emptyborder2);
......
337 340

  
338 341
      btnVirtualField.setActionCommand("...");
339 342
      btnVirtualField.setName("btnVirtualField");
340
      btnVirtualField.setOpaque(false);
341 343
      btnVirtualField.setText("...");
342 344
      EmptyBorder emptyborder3 = new EmptyBorder(2,2,2,2);
343 345
      btnVirtualField.setBorder(emptyborder3);
......
386 388

  
387 389
      btnCRS.setActionCommand("...");
388 390
      btnCRS.setName("btnCRS");
389
      btnCRS.setOpaque(false);
390 391
      btnCRS.setText("...");
391 392
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
392 393
      btnCRS.setBorder(emptyborder1);
......
444 445

  
445 446
      btnIntervalStart.setActionCommand("...");
446 447
      btnIntervalStart.setName("btnIntervalStart");
447
      btnIntervalStart.setOpaque(false);
448 448
      btnIntervalStart.setText("...");
449 449
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
450 450
      btnIntervalStart.setBorder(emptyborder1);
......
452 452

  
453 453
      btnIntervalEnd.setActionCommand("...");
454 454
      btnIntervalEnd.setName("btnIntervalEnd");
455
      btnIntervalEnd.setOpaque(false);
456 455
      btnIntervalEnd.setText("...");
457 456
      EmptyBorder emptyborder2 = new EmptyBorder(2,2,2,2);
458 457
      btnIntervalEnd.setBorder(emptyborder2);
......
497 496
      cboTagsValue.setRequestFocusEnabled(false);
498 497
      jpanel1.add(cboTagsValue,cc.xy(4,6));
499 498

  
500
      jpanel1.add(createPanel8(),cc.xywh(6,2,1,5));
501 499
      lbTagsLabelDescription.setName("lbTagsLabelDescription");
502 500
      lbTagsLabelDescription.setText("_Description");
503 501
      jpanel1.add(lbTagsLabelDescription,cc.xy(2,8));
......
505 503
      lblTagsDescription.setName("lblTagsDescription");
506 504
      jpanel1.add(lblTagsDescription,cc.xy(4,8));
507 505

  
506
      jpanel1.add(createPanel8(),new CellConstraints(6,2,1,5,CellConstraints.DEFAULT,CellConstraints.TOP));
508 507
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7 },new int[]{ 1,2,3,4,5,6,7,8,9 });
509 508
      return jpanel1;
510 509
   }
......
512 511
   public JPanel createPanel8()
513 512
   {
514 513
      JPanel jpanel1 = new JPanel();
515
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,FILL:DEFAULT:GROW(1.0)");
514
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,FILL:DEFAULT:NONE");
516 515
      CellConstraints cc = new CellConstraints();
517 516
      jpanel1.setLayout(formlayout1);
518 517

  
......
581 580

  
582 581
      btnForeingKeyFormula.setActionCommand("...");
583 582
      btnForeingKeyFormula.setName("btnForeingKeyFormula");
584
      btnForeingKeyFormula.setOpaque(false);
585 583
      btnForeingKeyFormula.setText("...");
586 584
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
587 585
      btnForeingKeyFormula.setBorder(emptyborder1);
......
589 587

  
590 588
      btnForeingKeyFormulaHistory.setActionCommand("...");
591 589
      btnForeingKeyFormulaHistory.setName("btnForeingKeyFormulaHistory");
592
      btnForeingKeyFormulaHistory.setOpaque(false);
593 590
      btnForeingKeyFormulaHistory.setText("...");
594 591
      EmptyBorder emptyborder2 = new EmptyBorder(2,2,2,2);
595 592
      btnForeingKeyFormulaHistory.setBorder(emptyborder2);
......
597 594

  
598 595
      btnForeingKeyFormulaBookmarks.setActionCommand("...");
599 596
      btnForeingKeyFormulaBookmarks.setName("btnForeingKeyFormulaBookmarks");
600
      btnForeingKeyFormulaBookmarks.setOpaque(false);
601 597
      btnForeingKeyFormulaBookmarks.setText("...");
602 598
      EmptyBorder emptyborder3 = new EmptyBorder(2,2,2,2);
603 599
      btnForeingKeyFormulaBookmarks.setBorder(emptyborder3);
......
680 676
   public JPanel createPanel12()
681 677
   {
682 678
      JPanel jpanel1 = new JPanel();
683
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE","CENTER:2DLU:NONE,FILL:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE");
679
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE");
684 680
      CellConstraints cc = new CellConstraints();
685 681
      jpanel1.setLayout(formlayout1);
686 682

  
687 683
      lblAvailableValues.setName("lblAvailableValues");
688 684
      lblAvailableValues.setText("_List_of_values");
689
      jpanel1.add(lblAvailableValues,cc.xywh(2,2,5,1));
685
      jpanel1.add(lblAvailableValues,cc.xywh(2,6,5,1));
690 686

  
691 687
      lstAvailableValues.setName("lstAvailableValues");
692 688
      JScrollPane jscrollpane1 = new JScrollPane();
693 689
      jscrollpane1.setViewportView(lstAvailableValues);
694 690
      jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
695 691
      jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
696
      jpanel1.add(jscrollpane1,new CellConstraints(2,4,3,1,CellConstraints.DEFAULT,CellConstraints.FILL));
692
      jpanel1.add(jscrollpane1,new CellConstraints(2,8,3,1,CellConstraints.DEFAULT,CellConstraints.FILL));
697 693

  
698 694
      lblAvailableValuesLabel.setName("lblAvailableValuesLabel");
699 695
      lblAvailableValuesLabel.setText("_Label");
700
      jpanel1.add(lblAvailableValuesLabel,cc.xy(2,6));
696
      jpanel1.add(lblAvailableValuesLabel,cc.xy(2,10));
701 697

  
702 698
      txtAvailableValuesLabel.setName("txtAvailableValuesLabel");
703
      jpanel1.add(txtAvailableValuesLabel,cc.xy(4,6));
699
      jpanel1.add(txtAvailableValuesLabel,cc.xy(4,10));
704 700

  
705 701
      lblAvailableValuesValue.setName("lblAvailableValuesValue");
706 702
      lblAvailableValuesValue.setText("_Value");
707
      jpanel1.add(lblAvailableValuesValue,cc.xy(2,8));
703
      jpanel1.add(lblAvailableValuesValue,cc.xy(2,12));
708 704

  
709 705
      txtAvailableValuesValue.setName("txtAvailableValuesValue");
710
      jpanel1.add(txtAvailableValuesValue,cc.xy(4,8));
706
      jpanel1.add(txtAvailableValuesValue,cc.xy(4,12));
711 707

  
712
      jpanel1.add(createPanel13(),cc.xywh(6,4,1,5));
713
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7 },new int[]{ 1,2,3,4,5,6,7,8,9 });
708
      lblValuesFilter.setName("lblValuesFilter");
709
      lblValuesFilter.setText("_Filter_for_values");
710
      jpanel1.add(lblValuesFilter,cc.xywh(2,2,5,1));
711

  
712
      jpanel1.add(createPanel13(),new CellConstraints(6,8,1,5,CellConstraints.DEFAULT,CellConstraints.TOP));
713
      jpanel1.add(createPanel14(),cc.xywh(2,4,5,1));
714
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6,7 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13 });
714 715
      return jpanel1;
715 716
   }
716 717

  
......
748 749
   public JPanel createPanel14()
749 750
   {
750 751
      JPanel jpanel1 = new JPanel();
752
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE");
753
      CellConstraints cc = new CellConstraints();
754
      jpanel1.setLayout(formlayout1);
755

  
756
      txtValuesFilter.setName("txtValuesFilter");
757
      jpanel1.add(txtValuesFilter,cc.xy(1,1));
758

  
759
      btnValuesFilter.setActionCommand("...");
760
      btnValuesFilter.setName("btnValuesFilter");
761
      btnValuesFilter.setText("...");
762
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
763
      btnValuesFilter.setBorder(emptyborder1);
764
      jpanel1.add(btnValuesFilter,cc.xy(3,1));
765

  
766
      btnValuesFilterHistory.setActionCommand("...");
767
      btnValuesFilterHistory.setName("btnValuesFilterHistory");
768
      btnValuesFilterHistory.setText("...");
769
      EmptyBorder emptyborder2 = new EmptyBorder(2,2,2,2);
770
      btnValuesFilterHistory.setBorder(emptyborder2);
771
      jpanel1.add(btnValuesFilterHistory,cc.xy(5,1));
772

  
773
      btnValuesFilterBookmarks.setActionCommand("...");
774
      btnValuesFilterBookmarks.setName("btnValuesFilterBookmarks");
775
      btnValuesFilterBookmarks.setText("...");
776
      EmptyBorder emptyborder3 = new EmptyBorder(2,2,2,2);
777
      btnValuesFilterBookmarks.setBorder(emptyborder3);
778
      jpanel1.add(btnValuesFilterBookmarks,cc.xy(7,1));
779

  
780
      addFillComponents(jpanel1,new int[]{ 2,4,6 },new int[0]);
781
      return jpanel1;
782
   }
783

  
784
   public JPanel createPanel15()
785
   {
786
      JPanel jpanel1 = new JPanel();
751 787
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE");
752 788
      CellConstraints cc = new CellConstraints();
753 789
      jpanel1.setLayout(formlayout1);
......
777 813
      return jpanel1;
778 814
   }
779 815

  
780
   public JPanel createPanel15()
816
   public JPanel createPanel16()
781 817
   {
782 818
      JPanel jpanel1 = new JPanel();
783 819
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE");
......
789 825

  
790 826
      btnFieldType.setIcon(loadImage("src/main/resources/org/gvsig/fmap/dal/swing/impl/featuretype/picker-datatype.png"));
791 827
      btnFieldType.setName("btnFieldType");
792
      btnFieldType.setOpaque(false);
793 828
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
794 829
      btnFieldType.setBorder(emptyborder1);
795 830
      jpanel1.add(btnFieldType,cc.xy(3,1));
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/DefaultFeatureAttributePanel.java
441 441
    private AvailableValuesController availableValuesController;
442 442
    private TagsController tagsController;
443 443
    private ForeingKeyController foreingKeyController;
444
    private ExpressionPickerController pickerValuesFilter;
444 445

  
445 446
    private int mode;
446 447
    private FeatureStoreElement featureStoreElement;
......
488 489

  
489 490
    private void initComponents() {
490 491
        final ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager();
491
        final ExpressionEvaluatorSwingManager evaluatorManager = ExpressionEvaluatorSwingLocator.getManager();
492
        final ExpressionEvaluatorSwingManager evaluatorSwingManager = ExpressionEvaluatorSwingLocator.getManager();
492 493
        final DataSwingManager dataSwingManager = DALSwingLocator.getSwingManager();
493 494
        final I18nManager i18n = ToolsLocator.getI18nManager();
494 495
        final DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager();
......
567 568
        swingManager.translate(this.btnAvailableValuesRemoveAll);
568 569
        swingManager.translate(this.lblTagsName);
569 570
        swingManager.translate(this.lblTagsValue);
571
        swingManager.translate(this.lblValuesFilter);
570 572

  
571 573
        swingManager.translate(this.lblForeingKeyCodeName);
572 574
        swingManager.translate(this.lblForeingKeyLabelFormula);
......
637 639
                this.txtIntervalStart,
638 640
                this.btnIntervalStart
639 641
        );
640
        this.pickerSize = evaluatorManager.createCalculatorController(
642
        this.pickerSize = evaluatorSwingManager.createCalculatorController(
641 643
                this.txtSize, DataTypes.INT
642 644
        );
643
        this.pickerDisplaySize = evaluatorManager.createCalculatorController(this.txtDisplaySize, DataTypes.INT
645
        this.pickerDisplaySize = evaluatorSwingManager.createCalculatorController(this.txtDisplaySize, DataTypes.INT
644 646
        );
645
        this.pickerPrecision = evaluatorManager.createCalculatorController(
647
        this.pickerPrecision = evaluatorSwingManager.createCalculatorController(
646 648
                this.txtPrecision, DataTypes.INT
647 649
        );
648
        this.pickerScale = evaluatorManager.createCalculatorController(
650
        this.pickerScale = evaluatorSwingManager.createCalculatorController(
649 651
                this.txtScale, DataTypes.INT
650 652
        );
651
        this.txtDefaultValue.getComponentPopupMenu().add(evaluatorManager.createJExpressionBuilderAction(txtDefaultValue));
652
        this.pickerOrder = evaluatorManager.createCalculatorController(
653
        this.txtDefaultValue.getComponentPopupMenu().add(evaluatorSwingManager.createJExpressionBuilderAction(txtDefaultValue));
654
        this.pickerOrder = evaluatorSwingManager.createCalculatorController(
653 655
                this.txtOrder, DataTypes.INT
654 656
        );
655 657

  
......
676 678

  
677 679
        this.btnVirtualField.setText("");
678 680
        this.featureStoreElement = dataSwingManager.createFeatureStoreElement();
679
        this.pickerVirtualField = ExpressionEvaluatorSwingLocator.getManager()
680
                .createExpressionPickerController(txtVirtualField, btnVirtualField, btnVirtualFieldBookmarks, btnVirtualFieldHistory);
681
        this.pickerVirtualField = evaluatorSwingManager.createExpressionPickerController(
682
                txtVirtualField, btnVirtualField, btnVirtualFieldBookmarks, btnVirtualFieldHistory
683
        );
681 684
        this.pickerVirtualField.addElement(this.featureStoreElement);
682 685
        this.chkVirtualField.addChangeListener((ChangeEvent e) -> {
683 686
          if (chkVirtualField.isSelected()) {
......
722 725
        relationTypeModel.addElement(new ListElement<>(i18n.getTranslation("_Composition_1_N"),DynField.RELATION_TYPE_COMPOSITION));
723 726
        relationTypeModel.addElement(new ListElement<>(i18n.getTranslation("_Aggregate_1_N"),DynField.RELATION_TYPE_AGGREGATE));
724 727
        this.cboRelationType.setModel(relationTypeModel);
728

  
729

  
730
        this.pickerValuesFilter = evaluatorSwingManager.createExpressionPickerController(
731
                txtValuesFilter, btnValuesFilter, btnValuesFilterBookmarks, btnValuesFilterHistory
732
        );
733
        this.pickerValuesFilter.addElement(this.featureStoreElement);
734

  
725 735
    }
726 736

  
727 737
    @Override
......
935 945

  
936 946
//        this.txtMinValue.setText(Objects.toString(descriptor.getMinValue(), ""));
937 947
//        this.txtMinValue.setText(Objects.toString(descriptor.getMaxValue(), ""));
948
        Expression valuesFilter = this.pickerValuesFilter.get();
949
        
938 950
        descriptor.setAvailableValues(this.availableValuesController.get());
939 951

  
940 952
        this.tagsController.fetch(descriptor.getTags());
......
1007 1019
                    FeatureSymbolTable featureSymbolTable = DALLocator.getDataManager().createFeatureSymbolTable();
1008 1020
                    featureSymbolTable.setFeature(sampleFeature);
1009 1021
                    this.pickerVirtualField.setPreviewSymbolTable(featureSymbolTable.createParent());
1022
                    this.pickerValuesFilter.setPreviewSymbolTable(featureSymbolTable.createParent());
1010 1023
                }
1011 1024
            }
1012 1025
            List<String> groups = new ArrayList<>();
......
1067 1080
            this.chkVirtualField.setSelected(false);
1068 1081
            this.pickerVirtualField.set(null);
1069 1082
        }
1083
        this.pickerVirtualField.setEnabled(true);
1070 1084

  
1085
        Expression expression = descriptor.getAvailableValuesFilter();
1086
        this.pickerValuesFilter.set(expression);
1087

  
1071 1088
        this.pickerCRS.set(descriptor.getSRS());
1072 1089

  
1073 1090
        if (descriptor.getGeomType() != null) {
......
1275 1292
                this.txtDescription.setEditable(true);
1276 1293
                this.txtMinValue.setEditable(false);
1277 1294
                this.txtMaxValue.setEditable(false);
1295
                this.pickerValuesFilter.setEditable(true);
1278 1296
                this.availableValuesController.setEditable(true);
1279 1297
                this.tagsController.setEditable(true);
1280 1298
                this.foreingKeyController.setEditable(true);
......
1328 1346
                this.txtDescription.setEditable(true);
1329 1347
                this.txtMinValue.setEditable(false);
1330 1348
                this.txtMaxValue.setEditable(false);
1349
                this.pickerValuesFilter.setEditable(true);
1331 1350
                this.availableValuesController.setEditable(true);
1332 1351
                this.tagsController.setEditable(true);
1333 1352
                this.foreingKeyController.setEditable(true);
......
1364 1383
                this.txtDescription.setEditable(false);
1365 1384
                this.txtMinValue.setEditable(false);
1366 1385
                this.txtMaxValue.setEditable(false);
1386
                this.pickerValuesFilter.setEditable(false);
1367 1387
                this.availableValuesController.setEditable(false);
1368 1388
                this.tagsController.setEditable(false);
1369 1389
                this.foreingKeyController.setEditable(false);
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/DefaultFeatureTypePanelView.java
1 1
package org.gvsig.fmap.dal.swing.impl.featuretype;
2 2

  
3 3
import com.jeta.forms.components.line.HorizontalLineComponent;
4
import com.jeta.forms.components.separator.TitledSeparator;
4 5
import com.jeta.open.i18n.I18NUtils;
5 6
import com.jgoodies.forms.layout.CellConstraints;
6 7
import com.jgoodies.forms.layout.FormLayout;
......
11 12
import javax.swing.Box;
12 13
import javax.swing.ImageIcon;
13 14
import javax.swing.JButton;
15
import javax.swing.JCheckBox;
14 16
import javax.swing.JComboBox;
15 17
import javax.swing.JFrame;
16 18
import javax.swing.JLabel;
......
20 22
import javax.swing.JTable;
21 23
import javax.swing.JTextArea;
22 24
import javax.swing.JTextField;
25
import javax.swing.border.EmptyBorder;
23 26

  
24 27

  
25 28
public class DefaultFeatureTypePanelView extends JPanel
26 29
{
27 30
   JTabbedPane tabFeatureType = new JTabbedPane();
31
   JPanel gridAttributes = new JPanel();
32
   HorizontalLineComponent horizontallinecomponent1 = new HorizontalLineComponent();
33
   JPanel gridAttributesTable = new JPanel();
28 34
   JTable tblFields = new JTable();
29
   HorizontalLineComponent horizontallinecomponent1 = new HorizontalLineComponent();
30
   JPanel pnlField = new JPanel();
31 35
   JButton btnNew = new JButton();
32 36
   JButton btnDelete = new JButton();
37
   JPanel gridAttributesDetail = new JPanel();
38
   JPanel pnlField = new JPanel();
33 39
   JButton btnFormFieldAccept = new JButton();
34 40
   JButton btnFormFieldDiscard = new JButton();
35 41
   JButton btnFormFieldModify = new JButton();
......
47 53
   JButton btnTagsAdd = new JButton();
48 54
   JButton btnTagsUpdate = new JButton();
49 55
   JButton btnTagsRemove = new JButton();
56
   JCheckBox chkRulesValidateFeatureBeforeInsert = new JCheckBox();
57
   JCheckBox chkRulesValidateFeaturesAtFinishEditing = new JCheckBox();
58
   TitledSeparator lblRulesDefaultRules = new TitledSeparator();
59
   TitledSeparator lblRulesCustomRules = new TitledSeparator();
60
   JPanel gridRules = new JPanel();
61
   JPanel gridRulesTable = new JPanel();
62
   JTable tblRules = new JTable();
63
   JButton btnRulesNew = new JButton();
64
   JButton btnRulesDelete = new JButton();
65
   JPanel gridRulesDetail = new JPanel();
66
   JLabel lblRuleName = new JLabel();
67
   JLabel lblRuleDescription = new JLabel();
68
   JLabel lblRuleCheckAtFinishEditing = new JLabel();
69
   JLabel lblRuleCheckAtUpdate = new JLabel();
70
   JLabel lblRuleValidation = new JLabel();
71
   JTextField txtRuleName = new JTextField();
72
   JCheckBox chkRuleCheckAtFinishEditing = new JCheckBox();
73
   JCheckBox chkRuleCheckAtUpdate = new JCheckBox();
74
   JTextField txtRuleDescription = new JTextField();
75
   JTextField txtRuleValidation = new JTextField();
76
   JButton btnRuleValidation = new JButton();
77
   JButton btnRuleValidationHistory = new JButton();
78
   JButton btnRuleValidationBookmarks = new JButton();
79
   JButton btnRuleFormFieldAccept = new JButton();
80
   JButton btnRuleFormFieldDiscard = new JButton();
81
   JButton btnRuleFormFieldModify = new JButton();
50 82
   JPanel pnlCfgActions = new JPanel();
51 83

  
52 84
   /**
......
146 178
      tabFeatureType.setName("tabFeatureType");
147 179
      tabFeatureType.addTab("_Main",null,createPanel1());
148 180
      tabFeatureType.addTab("_Visualization",null,createPanel4());
181
      tabFeatureType.addTab("_Rules",null,createPanel7());
149 182
      jpanel1.add(tabFeatureType,cc.xy(2,3));
150 183

  
151
      jpanel1.add(createPanel7(),cc.xy(2,2));
184
      jpanel1.add(createPanel12(),cc.xy(2,2));
152 185
      addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3,4 });
153 186
      return jpanel1;
154 187
   }
......
156 189
   public JPanel createPanel1()
157 190
   {
158 191
      JPanel jpanel1 = new JPanel();
159
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE","CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(0.2),CENTER:2DLU:NONE");
192
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE");
160 193
      CellConstraints cc = new CellConstraints();
161 194
      jpanel1.setLayout(formlayout1);
162 195

  
196
      jpanel1.add(creategridAttributes(),cc.xy(2,2));
197
      addFillComponents(jpanel1,new int[]{ 1,2,3 },new int[]{ 1,2,3 });
198
      return jpanel1;
199
   }
200

  
201
   public JPanel creategridAttributes()
202
   {
203
      gridAttributes.setName("gridAttributes");
204
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0)","FILL:DEFAULT:GROW(1.0),CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE");
205
      CellConstraints cc = new CellConstraints();
206
      gridAttributes.setLayout(formlayout1);
207

  
208
      gridAttributes.add(horizontallinecomponent1,cc.xy(1,2));
209

  
210
      gridAttributes.add(creategridAttributesTable(),cc.xy(1,1));
211
      gridAttributes.add(creategridAttributesDetail(),cc.xy(1,3));
212
      addFillComponents(gridAttributes,new int[]{ 1 },new int[]{ 1,3 });
213
      return gridAttributes;
214
   }
215

  
216
   public JPanel creategridAttributesTable()
217
   {
218
      gridAttributesTable.setName("gridAttributesTable");
219
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE","FILL:DEFAULT:GROW(1.0)");
220
      CellConstraints cc = new CellConstraints();
221
      gridAttributesTable.setLayout(formlayout1);
222

  
163 223
      tblFields.setName("tblFields");
164 224
      JScrollPane jscrollpane1 = new JScrollPane();
165 225
      jscrollpane1.setViewportView(tblFields);
166 226
      jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
167 227
      jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
168
      jpanel1.add(jscrollpane1,cc.xy(2,2));
228
      gridAttributesTable.add(jscrollpane1,cc.xy(1,1));
169 229

  
170
      jpanel1.add(horizontallinecomponent1,cc.xywh(2,4,3,1));
171

  
172
      pnlField.setName("pnlField");
173
      jpanel1.add(pnlField,cc.xy(2,6));
174

  
175
      jpanel1.add(createPanel2(),cc.xy(4,2));
176
      jpanel1.add(createPanel3(),cc.xy(4,6));
177
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5 },new int[]{ 1,2,3,4,5,6,7 });
178
      return jpanel1;
230
      gridAttributesTable.add(createPanel2(),new CellConstraints(3,1,1,1,CellConstraints.DEFAULT,CellConstraints.TOP));
231
      addFillComponents(gridAttributesTable,new int[]{ 2,3 },new int[0]);
232
      return gridAttributesTable;
179 233
   }
180 234

  
181 235
   public JPanel createPanel2()
......
199 253
      return jpanel1;
200 254
   }
201 255

  
256
   public JPanel creategridAttributesDetail()
257
   {
258
      gridAttributesDetail.setName("gridAttributesDetail");
259
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE","FILL:DEFAULT:GROW(1.0)");
260
      CellConstraints cc = new CellConstraints();
261
      gridAttributesDetail.setLayout(formlayout1);
262

  
263
      pnlField.setName("pnlField");
264
      gridAttributesDetail.add(pnlField,cc.xy(1,1));
265

  
266
      gridAttributesDetail.add(createPanel3(),new CellConstraints(3,1,1,1,CellConstraints.DEFAULT,CellConstraints.TOP));
267
      addFillComponents(gridAttributesDetail,new int[]{ 2,3 },new int[0]);
268
      return gridAttributesDetail;
269
   }
270

  
202 271
   public JPanel createPanel3()
203 272
   {
204 273
      JPanel jpanel1 = new JPanel();
205
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,FILL:2DLU:GROW(1.0)");
274
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE");
206 275
      CellConstraints cc = new CellConstraints();
207 276
      jpanel1.setLayout(formlayout1);
208 277

  
......
221 290
      btnFormFieldModify.setText("_Modify");
222 291
      jpanel1.add(btnFormFieldModify,cc.xy(2,1));
223 292

  
224
      addFillComponents(jpanel1,new int[]{ 1,3 },new int[]{ 1,2,3,4,5,6 });
293
      addFillComponents(jpanel1,new int[]{ 1,3 },new int[]{ 1,2,3,4,5 });
225 294
      return jpanel1;
226 295
   }
227 296

  
......
278 347

  
279 348
      cboTagsName.setEditable(true);
280 349
      cboTagsName.setName("cboTagsName");
281
      cboTagsName.setRequestFocusEnabled(false);
282 350
      jpanel1.add(cboTagsName,cc.xy(3,3));
283 351

  
284 352
      tblTags.setName("tblTags");
......
293 361

  
294 362
      cboTagsValue.setEditable(true);
295 363
      cboTagsValue.setName("cboTagsValue");
296
      cboTagsValue.setRequestFocusEnabled(false);
297 364
      jpanel1.add(cboTagsValue,cc.xy(3,5));
298 365

  
299 366
      jpanel1.add(createPanel6(),cc.xywh(5,1,1,5));
......
330 397
   public JPanel createPanel7()
331 398
   {
332 399
      JPanel jpanel1 = new JPanel();
400
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE");
401
      CellConstraints cc = new CellConstraints();
402
      jpanel1.setLayout(formlayout1);
403

  
404
      chkRulesValidateFeatureBeforeInsert.setActionCommand("_Validate_features_before_insert");
405
      chkRulesValidateFeatureBeforeInsert.setName("chkRulesValidateFeatureBeforeInsert");
406
      chkRulesValidateFeatureBeforeInsert.setText("_Validate_features_before_insert");
407
      jpanel1.add(chkRulesValidateFeatureBeforeInsert,cc.xy(2,4));
408

  
409
      chkRulesValidateFeaturesAtFinishEditing.setActionCommand("_Validate_features_at_finish_editing");
410
      chkRulesValidateFeaturesAtFinishEditing.setName("chkRulesValidateFeaturesAtFinishEditing");
411
      chkRulesValidateFeaturesAtFinishEditing.setText("_Validate_features_at_finish_editing");
412
      jpanel1.add(chkRulesValidateFeaturesAtFinishEditing,cc.xy(2,6));
413

  
414
      lblRulesDefaultRules.setName("lblRulesDefaultRules");
415
      lblRulesDefaultRules.setText("_Default_rules");
416
      jpanel1.add(lblRulesDefaultRules,cc.xywh(2,2,3,1));
417

  
418
      lblRulesCustomRules.setName("lblRulesCustomRules");
419
      lblRulesCustomRules.setText("_Custom_rules");
420
      jpanel1.add(lblRulesCustomRules,cc.xywh(2,7,3,1));
421

  
422
      jpanel1.add(creategridRules(),cc.xywh(2,9,3,1));
423
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5 },new int[]{ 1,2,3,4,5,6,7,8,9,10 });
424
      return jpanel1;
425
   }
426

  
427
   public JPanel creategridRules()
428
   {
429
      gridRules.setName("gridRules");
430
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0)","FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:GROW(1.0)");
431
      CellConstraints cc = new CellConstraints();
432
      gridRules.setLayout(formlayout1);
433

  
434
      gridRules.add(creategridRulesTable(),cc.xy(1,1));
435
      gridRules.add(creategridRulesDetail(),cc.xy(1,2));
436
      addFillComponents(gridRules,new int[]{ 1 },new int[]{ 1,2 });
437
      return gridRules;
438
   }
439

  
440
   public JPanel creategridRulesTable()
441
   {
442
      gridRulesTable.setName("gridRulesTable");
443
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE","FILL:DEFAULT:GROW(1.0)");
444
      CellConstraints cc = new CellConstraints();
445
      gridRulesTable.setLayout(formlayout1);
446

  
447
      tblRules.setEnabled(false);
448
      tblRules.setName("tblRules");
449
      JScrollPane jscrollpane1 = new JScrollPane();
450
      jscrollpane1.setViewportView(tblRules);
451
      jscrollpane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
452
      jscrollpane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
453
      gridRulesTable.add(jscrollpane1,cc.xy(1,1));
454

  
455
      gridRulesTable.add(createPanel8(),cc.xy(3,1));
456
      addFillComponents(gridRulesTable,new int[]{ 2,3 },new int[0]);
457
      return gridRulesTable;
458
   }
459

  
460
   public JPanel createPanel8()
461
   {
462
      JPanel jpanel1 = new JPanel();
463
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0)");
464
      CellConstraints cc = new CellConstraints();
465
      jpanel1.setLayout(formlayout1);
466

  
467
      btnRulesNew.setActionCommand("_New");
468
      btnRulesNew.setName("btnRulesNew");
469
      btnRulesNew.setText("_New");
470
      jpanel1.add(btnRulesNew,cc.xy(2,1));
471

  
472
      btnRulesDelete.setActionCommand("_Delete");
473
      btnRulesDelete.setName("btnRulesDelete");
474
      btnRulesDelete.setText("_Delete");
475
      jpanel1.add(btnRulesDelete,cc.xy(2,3));
476

  
477
      addFillComponents(jpanel1,new int[]{ 1,3 },new int[]{ 1,2,3,4,5 });
478
      return jpanel1;
479
   }
480

  
481
   public JPanel creategridRulesDetail()
482
   {
483
      gridRulesDetail.setName("gridRulesDetail");
484
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:NONE,FILL:DEFAULT:NONE","FILL:DEFAULT:GROW(1.0)");
485
      CellConstraints cc = new CellConstraints();
486
      gridRulesDetail.setLayout(formlayout1);
487

  
488
      gridRulesDetail.add(createPanel9(),cc.xy(1,1));
489
      gridRulesDetail.add(createPanel11(),cc.xy(3,1));
490
      addFillComponents(gridRulesDetail,new int[]{ 1,2,3 },new int[]{ 1 });
491
      return gridRulesDetail;
492
   }
493

  
494
   public JPanel createPanel9()
495
   {
496
      JPanel jpanel1 = new JPanel();
497
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU: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");
498
      CellConstraints cc = new CellConstraints();
499
      jpanel1.setLayout(formlayout1);
500

  
501
      lblRuleName.setName("lblRuleName");
502
      lblRuleName.setText("_Name");
503
      jpanel1.add(lblRuleName,cc.xy(1,1));
504

  
505
      lblRuleDescription.setName("lblRuleDescription");
506
      lblRuleDescription.setText("_Description");
507
      jpanel1.add(lblRuleDescription,cc.xy(1,3));
508

  
509
      lblRuleCheckAtFinishEditing.setName("lblRuleCheckAtFinishEditing");
510
      lblRuleCheckAtFinishEditing.setText("_Check_at_finish_editing");
511
      jpanel1.add(lblRuleCheckAtFinishEditing,cc.xy(1,5));
512

  
513
      lblRuleCheckAtUpdate.setName("lblRuleCheckAtUpdate");
514
      lblRuleCheckAtUpdate.setText("_Check_at_insert");
515
      jpanel1.add(lblRuleCheckAtUpdate,cc.xy(1,7));
516

  
517
      lblRuleValidation.setName("lblRuleValidation");
518
      lblRuleValidation.setText("_Validation");
519
      jpanel1.add(lblRuleValidation,cc.xy(1,9));
520

  
521
      txtRuleName.setName("txtRuleName");
522
      jpanel1.add(txtRuleName,cc.xy(3,1));
523

  
524
      chkRuleCheckAtFinishEditing.setName("chkRuleCheckAtFinishEditing");
525
      jpanel1.add(chkRuleCheckAtFinishEditing,cc.xy(3,5));
526

  
527
      chkRuleCheckAtUpdate.setName("chkRuleCheckAtUpdate");
528
      jpanel1.add(chkRuleCheckAtUpdate,cc.xy(3,7));
529

  
530
      txtRuleDescription.setName("txtRuleDescription");
531
      jpanel1.add(txtRuleDescription,cc.xy(3,3));
532

  
533
      jpanel1.add(createPanel10(),cc.xy(3,9));
534
      addFillComponents(jpanel1,new int[]{ 2,4 },new int[]{ 2,4,6,8 });
535
      return jpanel1;
536
   }
537

  
538
   public JPanel createPanel10()
539
   {
540
      JPanel jpanel1 = new JPanel();
541
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE");
542
      CellConstraints cc = new CellConstraints();
543
      jpanel1.setLayout(formlayout1);
544

  
545
      txtRuleValidation.setName("txtRuleValidation");
546
      jpanel1.add(txtRuleValidation,cc.xy(1,1));
547

  
548
      btnRuleValidation.setActionCommand("...");
549
      btnRuleValidation.setName("btnRuleValidation");
550
      btnRuleValidation.setText("...");
551
      EmptyBorder emptyborder1 = new EmptyBorder(2,2,2,2);
552
      btnRuleValidation.setBorder(emptyborder1);
553
      jpanel1.add(btnRuleValidation,cc.xy(3,1));
554

  
555
      btnRuleValidationHistory.setActionCommand("...");
556
      btnRuleValidationHistory.setName("btnRuleValidationHistory");
557
      btnRuleValidationHistory.setText("...");
558
      EmptyBorder emptyborder2 = new EmptyBorder(2,2,2,2);
559
      btnRuleValidationHistory.setBorder(emptyborder2);
560
      jpanel1.add(btnRuleValidationHistory,cc.xy(5,1));
561

  
562
      btnRuleValidationBookmarks.setActionCommand("...");
563
      btnRuleValidationBookmarks.setName("btnRuleValidationBookmarks");
564
      btnRuleValidationBookmarks.setText("...");
565
      EmptyBorder emptyborder3 = new EmptyBorder(2,2,2,2);
566
      btnRuleValidationBookmarks.setBorder(emptyborder3);
567
      jpanel1.add(btnRuleValidationBookmarks,cc.xy(7,1));
568

  
569
      addFillComponents(jpanel1,new int[]{ 2,4,6 },new int[0]);
570
      return jpanel1;
571
   }
572

  
573
   public JPanel createPanel11()
574
   {
575
      JPanel jpanel1 = new JPanel();
576
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,FILL:2DLU:GROW(1.0)");
577
      CellConstraints cc = new CellConstraints();
578
      jpanel1.setLayout(formlayout1);
579

  
580
      btnRuleFormFieldAccept.setActionCommand("JButton");
581
      btnRuleFormFieldAccept.setName("btnRuleFormFieldAccept");
582
      btnRuleFormFieldAccept.setText("Accept");
583
      jpanel1.add(btnRuleFormFieldAccept,cc.xy(2,3));
584

  
585
      btnRuleFormFieldDiscard.setActionCommand("JButton");
586
      btnRuleFormFieldDiscard.setName("btnRuleFormFieldDiscard");
587
      btnRuleFormFieldDiscard.setText("_Discard");
588
      jpanel1.add(btnRuleFormFieldDiscard,cc.xy(2,5));
589

  
590
      btnRuleFormFieldModify.setActionCommand("JButton");
591
      btnRuleFormFieldModify.setName("btnRuleFormFieldModify");
592
      btnRuleFormFieldModify.setText("_Modify");
593
      jpanel1.add(btnRuleFormFieldModify,cc.xy(2,1));
594

  
595
      addFillComponents(jpanel1,new int[]{ 1,3 },new int[]{ 1,2,3,4,5,6 });
596
      return jpanel1;
597
   }
598

  
599
   public JPanel createPanel12()
600
   {
601
      JPanel jpanel1 = new JPanel();
333 602
      FormLayout formlayout1 = new FormLayout("FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:NONE","CENTER:DEFAULT:NONE");
334 603
      CellConstraints cc = new CellConstraints();
335 604
      jpanel1.setLayout(formlayout1);
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/DefaultFeatureAttributePanelView.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/DefaultFeatureAttributePanelView.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/DefaultFeatureAttributePanelView.xml</at>
28 29
   <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>
29 30
   <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
30 31
   <at name="components">
......
74 75
             </object>
75 76
            </at>
76 77
            <at name="name">lblFieldName</at>
77
            <at name="width">85</at>
78
            <at name="width">110</at>
78 79
            <at name="text">_Field_name</at>
79 80
            <at name="fill">
80 81
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
81 82
              <at name="name">fill</at>
82 83
             </object>
83 84
            </at>
84
            <at name="height">15</at>
85
            <at name="height">26</at>
85 86
           </object>
86 87
          </at>
87 88
         </object>
......
134 135
             </object>
135 136
            </at>
136 137
            <at name="name">txtFieldName</at>
137
            <at name="width">773</at>
138
            <at name="height">19</at>
138
            <at name="width">1255</at>
139
            <at name="height">30</at>
139 140
           </object>
140 141
          </at>
141 142
         </object>
......
188 189
             </object>
189 190
            </at>
190 191
            <at name="name">lblFieldType</at>
191
            <at name="width">85</at>
192
            <at name="width">110</at>
192 193
            <at name="text">_Field_type</at>
193 194
            <at name="fill">
194 195
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
195 196
              <at name="name">fill</at>
196 197
             </object>
197 198
            </at>
198
            <at name="height">15</at>
199
            <at name="height">26</at>
199 200
           </object>
200 201
          </at>
201 202
         </object>
......
282 283
                      </at>
283 284
                      <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
284 285
                     </super>
285
                     <at name="id">embedded.2063830920</at>
286
                     <at name="id">embedded.908510838</at>
286 287
                     <at name="rowspecs">CENTER:2DLU:NONE,FILL: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,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE</at>
287 288
                     <at name="colspecs">FILL:4DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
288 289
                     <at name="components">
......
332 333
                               </object>
333 334
                              </at>
334 335
                              <at name="name">lblSize</at>
335
                              <at name="width">160</at>
336
                              <at name="width">203</at>
336 337
                              <at name="text">_Size</at>
337 338
                              <at name="fill">
338 339
                               <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
339 340
                                <at name="name">fill</at>
340 341
                               </object>
341 342
                              </at>
342
                              <at name="height">15</at>
343
                              <at name="height">26</at>
343 344
                             </object>
344 345
                            </at>
345 346
                           </object>
......
392 393
                               </object>
393 394
                              </at>
394 395
                              <at name="name">txtSize</at>
395
                              <at name="width">649</at>
396
                              <at name="height">19</at>
396
                              <at name="width">1094</at>
397
                              <at name="height">30</at>
397 398
                             </object>
398 399
                            </at>
399 400
                           </object>
......
446 447
                               </object>
447 448
                              </at>
448 449
                              <at name="name">lblPrecision</at>
449
                              <at name="width">160</at>
450
                              <at name="width">203</at>
450 451
                              <at name="text">_Total_digits_precision</at>
451 452
                              <at name="fill">
452 453
                               <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
......
454 455
                               </object>
455 456
                              </at>
456 457
                              <at name="toolTipText">_Number_of_digits_used_to_represent_the_number_Includes_the_digits_of_the_integer_part_and_the_digits_of_the_decimal_part</at>
457
                              <at name="height">15</at>
458
                              <at name="height">26</at>
458 459
                             </object>
459 460
                            </at>
460 461
                           </object>
......
507 508
                               </object>
508 509
                              </at>
509 510
                              <at name="name">lblDefaultValue</at>
510
                              <at name="width">160</at>
511
                              <at name="width">203</at>
511 512
                              <at name="text">_Default_value</at>
512 513
                              <at name="fill">
513 514
                               <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
514 515
                                <at name="name">fill</at>
515 516
                               </object>
516 517
                              </at>
517
                              <at name="height">15</at>
518
                              <at name="height">26</at>
518 519
                             </object>
519 520
                            </at>
520 521
                           </object>
......
567 568
                               </object>
568 569
                              </at>
569 570
                              <at name="name">txtPrecision</at>
570
                              <at name="width">649</at>
571
                              <at name="width">1094</at>
571 572
                              <at name="toolTipText">_Number_of_digits_used_to_represent_the_number_Includes_the_digits_of_the_integer_part_and_the_digits_of_the_decimal_part</at>
572
                              <at name="height">19</at>
573
                              <at name="height">30</at>
573 574
                             </object>
574 575
                            </at>
575 576
                           </object>
......
622 623
                               </object>
623 624
                              </at>
624 625
                              <at name="name">txtDefaultValue</at>
625
                              <at name="width">649</at>
626
                              <at name="height">19</at>
626
                              <at name="width">1094</at>
627
                              <at name="height">30</at>
627 628
                             </object>
628 629
                            </at>
629 630
                           </object>
......
676 677
                               </object>
677 678
                              </at>
678 679
                              <at name="name">lblDataProfile</at>
679
                              <at name="width">160</at>
680
                              <at name="width">203</at>
680 681
                              <at name="text">_Data_profile</at>
681 682
                              <at name="fill">
682 683
                               <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
683 684
                                <at name="name">fill</at>
684 685
                               </object>
685 686
                              </at>
686
                              <at name="height">15</at>
687
                              <at name="height">26</at>
687 688
                             </object>
688 689
                            </at>
689 690
                           </object>
......
736 737
                               </object>
737 738
                              </at>
738 739
                              <at name="name">cboDataProfile</at>
739
                              <at name="width">649</at>
740
                              <at name="width">1094</at>
740 741
                              <at name="items">
741 742
                               <object classname="com.jeta.forms.store.properties.ItemsProperty">
742 743
                                <at name="name">items</at>
743 744
                               </object>
744 745
                              </at>
745
                              <at name="height">24</at>
746
                              <at name="height">38</at>
746 747
                             </object>
747 748
                            </at>
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff