Revision 5953

View differences:

org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/pom.xml
1
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2
  <modelVersion>4.0.0</modelVersion>
3
  <parent>
4
    <groupId>org.gvsig</groupId>
5
    <artifactId>org.gvsig.vcsgis</artifactId>
6
    <version>1.0.53</version>
7
  </parent>
8
  <artifactId>org.gvsig.vcsgis.app</artifactId>
9
  <packaging>pom</packaging>
10
  <name>${project.artifactId}</name>
11
  <modules>
12
    <module>org.gvsig.vcsgis.app.mainplugin</module>
13
    <module>org.gvsig.vcsgis.app.server</module>
14
  </modules>
15

  
16
</project>
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/buildNumber.properties
1
#Sun Feb 27 20:59:25 CET 2022
2
buildNumber=61
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/VCSGisDialogsHelper.java
1
/*
2
 * gvSIG. Desktop Geographic Information System.
3
 * 
4
 * Copyright (C) 2007-2020 gvSIG Association.
5
 * 
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 3
9
 * of the License, or (at your option) any later version.
10
 * 
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 * 
16
 * You should have received a copy of the GNU General Public License 
17
 * along with this program. If not, see <https://www.gnu.org/licenses/>. 
18
 * 
19
 * For any additional information, do not hesitate to contact us
20
 * at info AT gvsig.com, or visit our website www.gvsig.com.
21
 */
22

  
23
package org.gvsig.vcsgis.app;
24

  
25
import java.awt.event.ActionEvent;
26
import java.awt.event.ComponentAdapter;
27
import java.awt.event.ComponentEvent;
28
import java.util.HashMap;
29
import java.util.Map;
30
import javax.swing.JPanel;
31
import javax.swing.SwingUtilities;
32
import org.gvsig.andami.ui.mdiManager.IWindow;
33
import org.gvsig.andami.ui.mdiManager.MDIManager;
34
import org.gvsig.app.ApplicationLocator;
35
import org.gvsig.tools.ToolsLocator;
36
import org.gvsig.tools.i18n.I18nManager;
37
import org.gvsig.tools.swing.api.Component;
38
import org.gvsig.tools.swing.api.ToolsSwingLocator;
39
import org.gvsig.tools.swing.api.windowmanager.Dialog;
40
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
41
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2;
42
import org.gvsig.vcsgis.swing.VCSGisPanel;
43
import org.slf4j.Logger;
44
import org.slf4j.LoggerFactory;
45

  
46
/**
47
 *
48
 * @author gvSIG Team
49
 */
50
public class VCSGisDialogsHelper {
51
    private static final Logger LOGGER = LoggerFactory.getLogger(VCSGisDialogsHelper.class);
52

  
53
    public static class VCSGisDialogInfo {
54

  
55
        private VCSGisPanel panel;
56
        private final String name;
57
        private final String title;
58
        private String header;
59
        private String okLabel;
60
        private boolean closed;
61
        private Runnable action;
62
        private Dialog dialog;
63
        private boolean autoclose;
64

  
65
        public VCSGisDialogInfo(String name, VCSGisPanel thePanel, String title) {
66
            this.name = name;
67
            this.panel = thePanel;
68
            this.title = title;
69
            this.closed = true;
70
            this.autoclose = false;
71

  
72
            this.panel.asJComponent().addComponentListener(new ComponentAdapter() {
73
                @Override
74
                public void componentHidden(ComponentEvent e) {
75
                    closed = true;
76
                }
77
            });
78
        }
79
        
80
        public VCSGisDialogInfo(String name, VCSGisPanel thePanel, String title, String header, String okLabel) {
81
            this(name, thePanel, title);
82
            this.header = header;
83
            this.okLabel = okLabel;
84
        }
85

  
86
        private void performDialogAction() {
87
            action.run();
88
        }
89

  
90
        public void setAction(Runnable action) {
91
            this.action = action;
92
        }
93

  
94
        public Component getPanel() {
95
            return this.panel;
96
        }
97

  
98
        public boolean isClosed() {
99
            return this.closed;
100
        }
101

  
102
        public String getName() {
103
            return this.name;
104
        }
105

  
106
        public void setAutoclose(boolean autoclose) {
107
            this.autoclose = autoclose;
108
        }
109
        
110
        private Dialog createDialog() {
111
            I18nManager i18n = ToolsLocator.getI18nManager();
112
            WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
113

  
114
            Dialog theDialog = winManager.createDialog(
115
                    this.panel.asJComponent(),
116
                    i18n.getTranslation(title),
117
                    i18n.getTranslation(header),
118
                    WindowManager_v2.BUTTONS_OK_CANCEL
119
            );
120
            theDialog.setAutoclose(false);
121

  
122
            this.panel.setDialog(theDialog);
123
            theDialog.setButtonLabel(
124
                    WindowManager_v2.BUTTON_OK,
125
                    i18n.getTranslation(okLabel)
126
            );
127
            theDialog.setButtonLabel(
128
                    WindowManager_v2.BUTTON_CANCEL,
129
                    i18n.getTranslation("_Close")
130
            );
131
            if (this.panel.isProcessing()) {
132
                theDialog.setButtonEnabled(WindowManager_v2.BUTTON_OK, false);
133
            }
134
            theDialog.addActionListener((ActionEvent e) -> {
135
                switch (theDialog.getAction()) {
136
                    case WindowManager_v2.BUTTON_OK:
137
                        Thread task = new Thread(() -> {
138
                            if(this.autoclose){
139
                                this.dialog.setButtonEnabled(WindowManager_v2.BUTTON_OK, false);
140
                            }
141
                            performDialogAction();
142
                            if(this.autoclose){
143
                                close();
144
                            }
145
                        }, "VCSGis" + name);
146
                        task.start();
147
                        break;
148
                    case WindowManager_v2.BUTTON_CANCEL:
149
                        close();
150
                        break;
151
                }
152
            });
153
            return theDialog;
154
        }
155

  
156
        public void show() {
157
            if (!this.closed) {
158
                MDIManager manager = ApplicationLocator.getApplicationManager().getUIManager();
159
                manager.moveToFrom(manager.getWindow((JPanel) this.panel.asJComponent()));
160
                return;
161
            }
162
            this.closed = false;
163
            if( this.action==null ) {
164
                I18nManager i18n = ToolsLocator.getI18nManager();
165
                WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
166
                winManager.showWindow(
167
                        this.panel.asJComponent(),
168
                        i18n.getTranslation(this.title),
169
                        WindowManager.MODE.WINDOW
170
                );
171
            } else {
172
                this.dialog = this.createDialog();
173
                this.dialog.show(WindowManager.MODE.WINDOW);
174
            }
175
        }
176
        
177
        private void close() {
178
            if (this.closed || this.dialog == null) {
179
                this.panel = null;
180
                this.dialog = null;
181
                return;
182
            }
183
            if(!SwingUtilities.isEventDispatchThread()){
184
                SwingUtilities.invokeLater(this::close);
185
                return;
186
            }
187
            this.dialog.asJComponent().setVisible(false);     
188
            this.panel = null;
189
            this.dialog = null;
190
        }
191
    }
192

  
193
    private Map<String, VCSGisDialogInfo> dialogsInfo;
194

  
195
    public VCSGisDialogInfo getDialog(String name) {
196
        if (this.dialogsInfo == null) {
197
            return null;
198
        }
199
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
200
        return info;
201
    }
202

  
203
    public VCSGisDialogInfo getOrCreateDialog(String name, VCSGisPanel panel, String title, String header, String okLabel, Runnable action) {
204
        if (this.dialogsInfo == null) {
205
            this.dialogsInfo = new HashMap<>();
206
        }
207
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
208
        if (info == null || info.isClosed() ) {
209
            info = new VCSGisDialogInfo(name, panel, title, header, okLabel);
210
            info.setAction(action);
211
            this.dialogsInfo.put(name, info);
212
        }
213
        return info;
214
    }
215

  
216
    public VCSGisDialogInfo getOrCreateDialog(String name, VCSGisPanel panel, String title) {
217
        if (this.dialogsInfo == null) {
218
            this.dialogsInfo = new HashMap<>();
219
        }
220
        VCSGisDialogInfo info = this.dialogsInfo.get(name);
221
        if (info == null || info.isClosed()) {
222
            info = new VCSGisDialogInfo(name, panel, title);
223
            this.dialogsInfo.put(name, info);
224
        }
225
        return info;
226
    }
227

  
228
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/LayersWithGroup.java
1
/*
2
 * To change this license header, choose License Headers in Project Properties.
3
 * To change this template file, choose Tools | Templates
4
 * and open the template in the editor.
5
 */
6
package org.gvsig.vcsgis.app.addlayer;
7

  
8
import java.util.ArrayList;
9
import java.util.Collection;
10
import java.util.Iterator;
11
import java.util.LinkedHashMap;
12
import java.util.List;
13
import java.util.Map;
14
import org.apache.commons.lang.StringUtils;
15
import org.gvsig.fmap.dal.exception.DataException;
16
import org.gvsig.fmap.dal.feature.FeatureStore;
17
import org.gvsig.fmap.mapcontext.MapContext;
18
import org.gvsig.fmap.mapcontext.layers.FLayer;
19
import org.gvsig.fmap.mapcontext.layers.FLayers;
20
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
21
import org.gvsig.fmap.mapcontrol.MapControl;
22
import org.gvsig.tools.util.IsEmpty;
23

  
24
/**
25
 *
26
 * @author jjdelcerro
27
 */
28
public class LayersWithGroup implements Iterable<FLayer>, IsEmpty {
29
    
30
    //        private final VCSGisWorkspace workspace;
31
    private final Map<String, FLayer> treelayers;
32
    private final List<FLayer> layers;
33
    private final MapContext mapContext;
34

  
35
    public LayersWithGroup(MapContext mapContext) {
36
        //            this.workspace = workspace;
37
        this.treelayers = new LinkedHashMap<>();
38
        this.layers = new ArrayList<>();
39
        this.mapContext = mapContext;
40
    }
41

  
42
    public synchronized void add(String groupName, String layerName, FLayer layer) {
43
        layer.setVisible(true);
44
        layers.add(layer);
45
        if (StringUtils.isBlank(layerName)) {
46
            treelayers.put(layer.getName(), layer);
47
            return;
48
        }
49
        if (StringUtils.isBlank(groupName)) {
50
            treelayers.put(layerName, layer);
51
            return;
52
        }
53
        FLayers group = (FLayers) treelayers.get("$$" + groupName);
54
        if (group == null) {
55
            group = new FLayers();
56
            group.setMapContext(this.mapContext);
57
            group.setName(groupName);
58
            group.setParentLayer(mapContext.getLayers());
59
            treelayers.put("$$" + groupName, group);
60
        }
61
        group.add(layer);
62
    }
63

  
64
    public synchronized void updateMapContext(boolean maintainStructureInToC, boolean replaceLayerIfExists) {
65
        this.updateMapControl(null, maintainStructureInToC, replaceLayerIfExists);
66
    }
67
    
68
    public static final int UPDATE_MODE_REPLACE_LAYER_IF_EXISTS = 0;
69
    public static final int UPDATE_MODE_ADD_DUPLICATES = 1;
70
    public static final int UPDATE_MODE_SKIP_DUPLICATES = 2;
71
    
72
    public synchronized void updateMapControl(MapControl mapControl, boolean maintainStructureInToC, boolean replaceLayerIfExists) {
73
        updateMapControl(mapControl, maintainStructureInToC, UPDATE_MODE_REPLACE_LAYER_IF_EXISTS);
74
    }
75
    
76
    public synchronized void updateMapControl(MapControl mapControl, boolean maintainStructureInToC, int updateMode) {
77
        mapContext.beginAtomicEvent();
78
        try {
79
            if (maintainStructureInToC) {
80
                FLayers layersToC = mapContext.getLayers();
81
                for (FLayer aLayer : this) {
82
                    if (aLayer == null) {
83
                        continue;
84
                    }
85
                    if (aLayer instanceof FLayers) {
86
                        FLayers group = (FLayers) aLayer;
87
                        FLayer groupToC = layersToC.getLayer(aLayer.getName());
88
                        if (groupToC instanceof FLayers) {
89
                            for (FLayer l : group) {
90
                                FLyrVect ltoc = getLayer((FLayers)groupToC, (FLyrVect) l);
91
                                switch(updateMode) {
92
                                    case UPDATE_MODE_REPLACE_LAYER_IF_EXISTS:
93
                                        if( ltoc == null ) {
94
                                            ((FLayers) groupToC).add(l);
95
                                        } else { 
96
                                            refreshLayer(ltoc);
97
                                        }
98
                                        break;
99
                                    case UPDATE_MODE_ADD_DUPLICATES:
100
                                        ((FLayers) groupToC).add(l);
101
                                        break;
102
                                    case UPDATE_MODE_SKIP_DUPLICATES:
103
                                        if( ltoc == null ) {
104
                                            ((FLayers) groupToC).add(l);
105
                                        }
106
                                        break;
107
                                }
108
//                                if( replaceLayerIfExists ) {
109
//                                    FLyrVect ltoc = getLayer((FLayers)groupToC, (FLyrVect) l);
110
//                                    if( ltoc != null ) {
111
//                                        refreshLayer(ltoc);
112
//                                        continue;
113
//                                    }
114
//                                }
115
//                                ((FLayers) groupToC).add(l);
116
                            }
117
                        } else {
118
                            group.setVisible(true);
119
                            addLayer(mapControl, group);
120
                        }
121
                    } else {
122
                        FLyrVect ltoc = getLayer(layersToC, (FLyrVect) aLayer);
123
                        switch(updateMode) {
124
                            case UPDATE_MODE_REPLACE_LAYER_IF_EXISTS:
125
                                if( ltoc == null ) {
126
                                    aLayer.setVisible(true);
127
                                    addLayer(mapControl, aLayer);
128
                                } else {
129
                                    refreshLayer(ltoc);
130
                                }
131
                                break;
132
                            case UPDATE_MODE_ADD_DUPLICATES:
133
                                aLayer.setVisible(true);
134
                                addLayer(mapControl, aLayer);
135
                                break;
136
                            case UPDATE_MODE_SKIP_DUPLICATES:
137
                                if( ltoc == null ) {
138
                                    aLayer.setVisible(true);
139
                                    addLayer(mapControl, aLayer);
140
                                }
141
                                break;
142
                        }
143
//                        if( replaceLayerIfExists ) {
144
//                            FLyrVect ltoc = getLayer(layersToC, (FLyrVect) aLayer);
145
//                            if( ltoc != null ) {
146
//                                refreshLayer(ltoc);
147
//                                continue;
148
//                            }
149
//                        }
150
//                        aLayer.setVisible(true);
151
//                        addLayer(mapControl, aLayer);
152
                    }
153
                }
154
            } else {
155
                for (FLayer aLayer : this.allLayers()) {
156
                    addLayer(mapControl, aLayer);
157
                }
158
            }
159
        } finally {
160
            mapContext.endAtomicEvent();
161
        }
162
    }
163
    
164
    private void refreshLayer(FLyrVect layer) {
165
        try {
166
            layer.getFeatureStore().refresh();
167
        } catch (DataException ex) {
168
            
169
        }
170
    }
171
    
172
    private FLyrVect getLayer(FLayers group, FLyrVect layer) {
173
        FeatureStore store = ((FLyrVect) layer).getFeatureStore();
174
        for (FLayer layer1 : group) {
175
            if( layer1 instanceof FLyrVect ) {
176
                FeatureStore store1 = ((FLyrVect) layer1).getFeatureStore();
177
                if( StringUtils.equals(store1.getFullName(), store.getFullName() )) {
178
                    return (FLyrVect) layer1;
179
                }
180
            }
181
        }
182
        return null;
183
    }
184

  
185
    private void addLayer(MapControl mapControl, FLayer layer) {
186
        if( mapControl != null ) {
187
            mapControl.addLayer(layer);
188
            return;
189
        }
190
        this.mapContext.getLayers().add(layer);
191
        if( !this.mapContext.hasActiveLayers() ) {
192
          layer.setActive(true);
193
        }
194
    }
195

  
196
    public synchronized void disposeLayers() {
197
        for (FLayer layer : this) {
198
            layer.dispose();
199
        }
200
    }
201

  
202
    @Override
203
    public boolean isEmpty() {
204
        return this.treelayers.isEmpty();
205
    }
206

  
207
    @Override
208
    public Iterator<FLayer> iterator() {
209
        return this.treelayers.values().iterator();
210
    }
211

  
212
    public Collection<FLayer> allLayers() {
213
        return this.layers;
214
    }
215
    
216
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/WizardVCSGisVectorial.java
1
package org.gvsig.vcsgis.app.addlayer;
2

  
3
import java.util.ArrayList;
4
import java.util.Collection;
5
import java.util.Comparator;
6
import java.util.List;
7
import java.util.function.Function;
8
import javax.swing.SwingUtilities;
9
import org.apache.commons.collections4.comparators.ComparableComparator;
10
import org.apache.commons.lang.StringUtils;
11
import org.cresques.cts.IProjection;
12
import org.gvsig.fmap.dal.DALLocator;
13
import org.gvsig.fmap.dal.DataManager;
14
import org.gvsig.fmap.dal.feature.FeatureStore;
15
import org.gvsig.fmap.dal.feature.FeatureType;
16
import org.gvsig.fmap.dal.store.db.DBStoreParameters;
17
import org.gvsig.fmap.mapcontext.MapContext;
18
import org.gvsig.fmap.mapcontext.MapContextLocator;
19
import org.gvsig.fmap.mapcontext.MapContextManager;
20
import org.gvsig.fmap.mapcontext.layers.FLayer;
21
import org.gvsig.fmap.mapcontrol.MapControl;
22
import org.gvsig.geodb.TableInfo;
23
import static org.gvsig.geodb.vectorialdb.visibility.LayerScaleVisibilityUtils.checkForVisibilityScale;
24
import org.gvsig.tools.ToolsLocator;
25
import org.gvsig.tools.dispose.DisposeUtils;
26
import org.gvsig.tools.task.SimpleTaskStatus;
27
import static org.gvsig.vcsgis.app.addlayer.AbstractWizardVCSGis.LOGGER;
28
import org.gvsig.vcsgis.lib.VCSGisEntity;
29
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspace;
30
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspaceEntity;
31

  
32
/**
33
 *
34
 * @author gvSIG Team
35
 */
36
@SuppressWarnings("UseSpecificCatch")
37
public class WizardVCSGisVectorial extends AbstractWizardVCSGis {
38

  
39
    @SuppressWarnings("OverridableMethodCallInConstructor")
40
    public WizardVCSGisVectorial() {
41
        super();
42
        this.setVidibleMaintainStructureInToC(true);
43
    }
44

  
45
    @Override
46
    protected boolean requireGeometry() {
47
        return true;
48
    }
49

  
50
    @Override
51
    public Object executeWizard() {
52
        DataManager man = DALLocator.getDataManager();
53
        MapContextManager mapContextManager = MapContextLocator.getMapContextManager();
54

  
55
        MapControl mapControl = this.getMapCtrl();
56
        MapContext mapContext = mapControl.getMapContext();
57

  
58
        LayersWithGroup layers = new LayersWithGroup(mapContext);
59
        VCSGisWorkspace workspace = this.getWorkspace();
60
        boolean checkScale = this.getCheckScale();
61
        boolean addToCWhenLoadingAll = this.getAddToCWhenLoadingAll();
62
        
63
        Thread th = new Thread(() -> {
64
            SimpleTaskStatus taskstatus = ToolsLocator.getTaskStatusManager().createDefaultSimpleTaskStatus("Loading layers");        
65
            taskstatus.setIndeterminate();
66
            taskstatus.setAutoremove(true);
67
            taskstatus.add();
68
            try {
69
                List<VCSGisTableInfo> tablesInformation = new ArrayList<>();
70
                for (TableInfo tableInfo : getTablesInformation()) {
71
                    tablesInformation.add((VCSGisTableInfo) tableInfo);
72
                }
73
                tablesInformation.sort(new Comparator<VCSGisTableInfo>() {
74
                    @Override
75
                    public int compare(VCSGisTableInfo o1, VCSGisTableInfo o2) {
76
                        if( o1==null || o2==null ) {
77
                            return 0;
78
                        }
79
                        VCSGisEntity e1 = o1.getEntity();
80
                        VCSGisEntity e2 = o2.getEntity();
81
                        if( e1==null || e2==null ) {
82
                            return 0;
83
                        }
84
                        FeatureType ft1 = o1.getFeatureType();
85
                        FeatureType ft2 = o2.getFeatureType();
86
                        int order1 = (ft1==null)? 0:ft1.getTags().getInt("TOC_Order",0);
87
                        int order2 = (ft2==null)? 0:ft2.getTags().getInt("TOC_Order",0);
88
                        String id1 = String.format("%05d/%s/%s", order1, e1.getFirstCategory(), e1.getLabelOrName());
89
                        String id2 = String.format("%05d/%s/%s", order2, e2.getFirstCategory(), e2.getLabelOrName());
90
                        return id2.compareTo(id1);
91
                    }
92
                });
93

  
94
                taskstatus.setRangeOfValues(0, tablesInformation.size());
95
                FLayer layer;
96
                for (VCSGisTableInfo tableInfo : tablesInformation) {
97
                    if( taskstatus.isCancellationRequested() ) {
98
                        taskstatus.cancel();
99
                        return;
100
                    }
101
                    if (!tableInfo.isSelected()) {
102
                        continue;
103
                    }
104
                    taskstatus.message(tableInfo.getEntity().getLabelOrName());
105
                    LOGGER.info("Load layer '"+tableInfo.getId()+"'");
106
                    DBStoreParameters params = tableInfo.getParameters();
107
                    fixCRS(params);
108
                    FeatureStore store;
109
                    try {
110
                        store = (FeatureStore) man.openStore(
111
                                params.getDataStoreName(),
112
                                params
113
                        );
114
                    } catch (Exception e) {
115
                        LOGGER.warn("While opening DB store.", e);
116
                        taskstatus.abort();
117
                        return;
118
                    }
119
                    try {
120
                        
121
                        layer = mapContextManager.createLayer(
122
                                tableInfo.getDocumentName(),
123
                                store
124
                        );
125
                        checkForVisibilityScale(layer, checkScale);
126
                        
127
                        String tableName = params.getTable();
128
                        if (StringUtils.isBlank(tableName)) {
129
                            layers.add(null, null, layer);
130
                        } else {
131
                            VCSGisWorkspaceEntity entity = workspace.getWorkspaceEntityByName(tableName);
132
                            if (entity == null) {
133
                                layers.add(null, tableName, layer);
134
                            } else {
135
                                layers.add(entity.getFirstCategory(), layer.getName(), layer);
136
                            }
137
                        }
138
                        if( !addToCWhenLoadingAll ) {
139
                            SwingUtilities.invokeLater(() -> {
140
                                layers.updateMapControl(mapControl, maintainStructureInToC(), LayersWithGroup.UPDATE_MODE_SKIP_DUPLICATES);
141
                            });
142
                        }
143
                    } catch (Exception e) {
144
                        LOGGER.warn("Can't create layer '" + tableInfo.getDocumentName() + "'.", e);
145
                    } finally {
146
                        DisposeUtils.disposeQuietly(store);
147
                    }
148
                    taskstatus.incrementCurrentValue();
149
                }
150
                if( addToCWhenLoadingAll ) {
151
                    SwingUtilities.invokeLater(() -> {
152
                        layers.updateMapControl(mapControl, maintainStructureInToC(), false);
153
                        layers.disposeLayers();
154
                    });
155
                } else {
156
                    SwingUtilities.invokeLater(() -> {
157
                        layers.disposeLayers();
158
                    });
159
                }
160
                taskstatus.terminate();
161
            } finally {
162
                // Dispose all created layers. If they have been included into
163
                // a FLayers object, they will have been binded there.
164
//                for (FLayer layer : layers) {
165
//                    layer.dispose();
166
//                }
167
            }
168
        }, "WizardVCSGisVectorial");
169
        th.start();
170
        return null;
171
    }
172

  
173
    private void fireLayerErrorEvent(FLayer lyr, MapControl mapControl) {
174
        mapControl.getMapContext().callNewErrorEvent(null);
175
    }
176

  
177
    @Override
178
    protected Function<VCSGisEntity, String> getLabelEntityFormatter() {
179
        return (VCSGisEntity entity) -> {
180
            FeatureType type = entity.getFeatureType();
181
            if (type == null) {
182
                return entity.getLabelOrName();
183
            }
184
            IProjection srs = type.getDefaultSRS();
185
            if (srs == null) {
186
                return entity.getLabelOrName();
187
            }
188
            MapContext mapContext1 = getMapContext();
189
            if (mapContext1 == null) {
190
                return entity.getLabelOrName() + " [" + srs.getAbrev() + "]";
191
            }
192
            if (mapContext1.getProjection() == null) {
193
                return entity.getLabelOrName() + " [" + srs.getAbrev() + "]";
194
            }
195
            if (StringUtils.equalsIgnoreCase(mapContext1.getProjection().getAbrev(), srs.getAbrev())) {
196
                return entity.getLabelOrName() + " [" + srs.getAbrev() + "]";
197
            }
198
            return entity.getLabelOrName() + " [" + srs.getAbrev() + "!]";
199
        };
200
    }
201

  
202
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/WizardVCSGisTabular.java
1
package org.gvsig.vcsgis.app.addlayer;
2

  
3
import java.util.ArrayList;
4
import java.util.List;
5
import org.gvsig.app.ApplicationLocator;
6
import org.gvsig.app.ApplicationManager;
7
import org.gvsig.app.project.documents.table.TableDocument;
8
import org.gvsig.app.project.documents.table.TableManager;
9
import org.gvsig.fmap.dal.DALLocator;
10
import org.gvsig.fmap.dal.DataManager;
11
import org.gvsig.fmap.dal.feature.FeatureStore;
12
import org.gvsig.fmap.dal.store.db.DBStoreParameters;
13
import org.gvsig.geodb.TableInfo;
14
import org.gvsig.tools.dispose.DisposeUtils;
15
import static org.gvsig.vcsgis.app.addlayer.AbstractWizardVCSGis.LOGGER;
16

  
17
/**
18
 *
19
 * @author jjdelcerro
20
 */
21
public class WizardVCSGisTabular extends AbstractWizardVCSGis {
22

  
23
    public WizardVCSGisTabular() {
24
        super();
25
    }
26

  
27
    @Override
28
    protected boolean requireGeometry() {
29
        return false;
30
    }
31

  
32
    @Override
33
    public Object executeWizard() {
34
        DataManager man = DALLocator.getDataManager();
35
        ApplicationManager application = ApplicationLocator.getManager();
36

  
37
        List<TableDocument> tabledocs = new ArrayList<>();
38
        for (TableInfo tableInfo : this.getTablesInformation()) {
39
            if (!tableInfo.isSelected()) {
40
                continue;
41
            }
42
            DBStoreParameters storeParams = tableInfo.getParameters();
43
            FeatureStore store = null;
44
            try {
45
                try {
46
                    store = (FeatureStore) man.openStore(
47
                            storeParams.getDataStoreName(),
48
                            storeParams
49
                    );
50
                } catch (Exception e) {
51
                    LOGGER.warn("Can't open store ", e);
52
                    return null;
53
                }
54
                TableDocument document = (TableDocument) application.getProjectManager().createDocument(
55
                        TableManager.TYPENAME,
56
                        tableInfo.getDocumentName()
57
                );
58
                document.setStore(store);
59
                tabledocs.add(document);
60
            } finally {
61
                DisposeUtils.disposeQuietly(store);
62
            }
63
        }
64
        return tabledocs;
65
    }
66
    
67
}
org.gvsig.vcsgis/tags/org.gvsig.vcsgis-1.0.53/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/AbstractWizardVCSGisView.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2

  
3
<object classname="com.jeta.forms.store.memento.FormPackage">
4
 <at name="fileversion">
5
  <object classname="com.jeta.forms.store.memento.FormsVersion2">
6
   <at name="major">2</at>
7
   <at name="minor">0</at>
8
   <at name="sub">0</at>
9
  </object>
10
 </at>
11
 <at name="form">
12
  <object classname="com.jeta.forms.store.memento.FormMemento">
13
   <super classname="com.jeta.forms.store.memento.ComponentMemento">
14
    <at name="cellconstraints">
15
     <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
16
      <at name="column">1</at>
17
      <at name="row">1</at>
18
      <at name="colspan">1</at>
19
      <at name="rowspan">1</at>
20
      <at name="halign">default</at>
21
      <at name="valign">default</at>
22
      <at name="insets" object="insets">0,0,0,0</at>
23
     </object>
24
    </at>
25
    <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
26
   </super>
27
   <at name="id">/home/jjdelcerro/datos/devel/org.gvsig.vcsgis/org.gvsig.vcsgis.app/org.gvsig.vcsgis.app.mainplugin/src/main/java/org/gvsig/vcsgis/app/addlayer/AbstractWizardVCSGisView.xml</at>
28
   <at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at>
29
   <at name="colspecs">FILL:4DLU:NONE,FILL:8DLU:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at>
30
   <at name="components">
31
    <object classname="java.util.LinkedList">
32
     <item >
33
      <at name="value">
34
       <object classname="com.jeta.forms.store.memento.FormMemento">
35
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
36
         <at name="cellconstraints">
37
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
38
           <at name="column">2</at>
39
           <at name="row">4</at>
40
           <at name="colspan">1</at>
41
           <at name="rowspan">1</at>
42
           <at name="halign">default</at>
43
           <at name="valign">default</at>
44
           <at name="insets" object="insets">0,0,0,0</at>
45
          </object>
46
         </at>
47
         <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
48
        </super>
49
        <at name="id">embedded.390896161</at>
50
        <at name="rowspecs">CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,FILL:DEFAULT:GROW(1.0),CENTER:2DLU:NONE,CENTER:DEFAULT:NONE</at>
51
        <at name="colspecs">FILL:DEFAULT:GROW(0.5),FILL:4DLU:NONE,FILL:DEFAULT:GROW(0.5)</at>
52
        <at name="components">
53
         <object classname="java.util.LinkedList">
54
          <item >
55
           <at name="value">
56
            <object classname="com.jeta.forms.store.memento.BeanMemento">
57
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
58
              <at name="cellconstraints">
59
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
60
                <at name="column">1</at>
61
                <at name="row">1</at>
62
                <at name="colspan">1</at>
63
                <at name="rowspan">1</at>
64
                <at name="halign">default</at>
65
                <at name="valign">default</at>
66
                <at name="insets" object="insets">0,0,0,0</at>
67
               </object>
68
              </at>
69
              <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
70
             </super>
71
             <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
72
             <at name="beanclass">com.jeta.forms.components.border.TitledBorderLabel</at>
73
             <at name="beanproperties">
74
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
75
               <at name="classname">com.jeta.forms.components.border.TitledBorderLabel</at>
76
               <at name="properties">
77
                <object classname="com.jeta.forms.store.support.PropertyMap">
78
                 <at name="border">
79
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
80
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
81
                    <at name="name">border</at>
82
                   </super>
83
                   <at name="borders">
84
                    <object classname="java.util.LinkedList">
85
                     <item >
86
                      <at name="value">
87
                       <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
88
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
89
                         <at name="name">border</at>
90
                        </super>
91
                       </object>
92
                      </at>
93
                     </item>
94
                    </object>
95
                   </at>
96
                  </object>
97
                 </at>
98
                 <at name="name">lblTable</at>
99
                 <at name="width">261</at>
100
                 <at name="text">choose_table</at>
101
                 <at name="height">21</at>
102
                </object>
103
               </at>
104
              </object>
105
             </at>
106
            </object>
107
           </at>
108
          </item>
109
          <item >
110
           <at name="value">
111
            <object classname="com.jeta.forms.store.memento.BeanMemento">
112
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
113
              <at name="cellconstraints">
114
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
115
                <at name="column">3</at>
116
                <at name="row">1</at>
117
                <at name="colspan">1</at>
118
                <at name="rowspan">1</at>
119
                <at name="halign">default</at>
120
                <at name="valign">default</at>
121
                <at name="insets" object="insets">0,0,0,0</at>
122
               </object>
123
              </at>
124
              <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
125
             </super>
126
             <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
127
             <at name="beanclass">com.jeta.forms.components.border.TitledBorderLabel</at>
128
             <at name="beanproperties">
129
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
130
               <at name="classname">com.jeta.forms.components.border.TitledBorderLabel</at>
131
               <at name="properties">
132
                <object classname="com.jeta.forms.store.support.PropertyMap">
133
                 <at name="border">
134
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
135
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
136
                    <at name="name">border</at>
137
                   </super>
138
                   <at name="borders">
139
                    <object classname="java.util.LinkedList">
140
                     <item >
141
                      <at name="value">
142
                       <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
143
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
144
                         <at name="name">border</at>
145
                        </super>
146
                       </object>
147
                      </at>
148
                     </item>
149
                    </object>
150
                   </at>
151
                  </object>
152
                 </at>
153
                 <at name="name">lblColumns</at>
154
                 <at name="width">264</at>
155
                 <at name="text">table_fields</at>
156
                 <at name="height">21</at>
157
                </object>
158
               </at>
159
              </object>
160
             </at>
161
            </object>
162
           </at>
163
          </item>
164
          <item >
165
           <at name="value">
166
            <object classname="com.jeta.forms.store.memento.BeanMemento">
167
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
168
              <at name="cellconstraints">
169
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
170
                <at name="column">3</at>
171
                <at name="row">3</at>
172
                <at name="colspan">1</at>
173
                <at name="rowspan">3</at>
174
                <at name="halign">default</at>
175
                <at name="valign">default</at>
176
                <at name="insets" object="insets">0,0,0,0</at>
177
               </object>
178
              </at>
179
              <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
180
             </super>
181
             <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
182
             <at name="beanclass">javax.swing.JList</at>
183
             <at name="beanproperties">
184
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
185
               <at name="classname">javax.swing.JList</at>
186
               <at name="properties">
187
                <object classname="com.jeta.forms.store.support.PropertyMap">
188
                 <at name="border">
189
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
190
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
191
                    <at name="name">border</at>
192
                   </super>
193
                   <at name="borders">
194
                    <object classname="java.util.LinkedList">
195
                     <item >
196
                      <at name="value">
197
                       <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
198
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
199
                         <at name="name">border</at>
200
                        </super>
201
                       </object>
202
                      </at>
203
                     </item>
204
                    </object>
205
                   </at>
206
                  </object>
207
                 </at>
208
                 <at name="scrollableTracksViewportHeight">true</at>
209
                 <at name="scrollableTracksViewportWidth">true</at>
210
                 <at name="name">lstColumns</at>
211
                 <at name="width">262</at>
212
                 <at name="items">
213
                  <object classname="com.jeta.forms.store.properties.ItemsProperty">
214
                   <at name="name">items</at>
215
                  </object>
216
                 </at>
217
                 <at name="scollBars">
218
                  <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
219
                   <at name="name">scollBars</at>
220
                   <at name="verticalpolicy">20</at>
221
                   <at name="horizontalpolicy">30</at>
222
                   <at name="border">
223
                    <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
224
                     <super classname="com.jeta.forms.store.properties.BorderProperty">
225
                      <at name="name">border</at>
226
                     </super>
227
                     <at name="borders">
228
                      <object classname="java.util.LinkedList">
229
                       <item >
230
                        <at name="value">
231
                         <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
232
                          <super classname="com.jeta.forms.store.properties.BorderProperty">
233
                           <at name="name">border</at>
234
                          </super>
235
                         </object>
236
                        </at>
237
                       </item>
238
                      </object>
239
                     </at>
240
                    </object>
241
                   </at>
242
                  </object>
243
                 </at>
244
                 <at name="height">134</at>
245
                </object>
246
               </at>
247
              </object>
248
             </at>
249
            </object>
250
           </at>
251
          </item>
252
          <item >
253
           <at name="value">
254
            <object classname="com.jeta.forms.store.memento.BeanMemento">
255
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
256
              <at name="cellconstraints">
257
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
258
                <at name="column">1</at>
259
                <at name="row">5</at>
260
                <at name="colspan">1</at>
261
                <at name="rowspan">1</at>
262
                <at name="halign">default</at>
263
                <at name="valign">default</at>
264
                <at name="insets" object="insets">0,0,0,0</at>
265
               </object>
266
              </at>
267
              <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
268
             </super>
269
             <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
270
             <at name="beanclass">javax.swing.JTree</at>
271
             <at name="beanproperties">
272
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
273
               <at name="classname">javax.swing.JTree</at>
274
               <at name="properties">
275
                <object classname="com.jeta.forms.store.support.PropertyMap">
276
                 <at name="border">
277
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
278
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
279
                    <at name="name">border</at>
280
                   </super>
281
                   <at name="borders">
282
                    <object classname="java.util.LinkedList">
283
                     <item >
284
                      <at name="value">
285
                       <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
286
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
287
                         <at name="name">border</at>
288
                        </super>
289
                       </object>
290
                      </at>
291
                     </item>
292
                    </object>
293
                   </at>
294
                  </object>
295
                 </at>
296
                 <at name="scrollableTracksViewportHeight">true</at>
297
                 <at name="scrollableTracksViewportWidth">true</at>
298
                 <at name="name">treeTables</at>
299
                 <at name="width">259</at>
300
                 <at name="rowCount">3</at>
301
                 <at name="scollBars">
302
                  <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
303
                   <at name="name">scollBars</at>
304
                   <at name="verticalpolicy">20</at>
305
                   <at name="horizontalpolicy">30</at>
306
                   <at name="border">
307
                    <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
308
                     <super classname="com.jeta.forms.store.properties.BorderProperty">
309
                      <at name="name">border</at>
310
                     </super>
311
                     <at name="borders">
312
                      <object classname="java.util.LinkedList">
313
                       <item >
314
                        <at name="value">
315
                         <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
316
                          <super classname="com.jeta.forms.store.properties.BorderProperty">
317
                           <at name="name">border</at>
318
                          </super>
319
                         </object>
320
                        </at>
321
                       </item>
322
                      </object>
323
                     </at>
324
                    </object>
325
                   </at>
326
                  </object>
327
                 </at>
328
                 <at name="rootVisible">false</at>
329
                 <at name="height">78</at>
330
                </object>
331
               </at>
332
              </object>
333
             </at>
334
            </object>
335
           </at>
336
          </item>
337
          <item >
338
           <at name="value">
339
            <object classname="com.jeta.forms.store.memento.FormMemento">
340
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
341
              <at name="cellconstraints">
342
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
343
                <at name="column">3</at>
344
                <at name="row">7</at>
345
                <at name="colspan">1</at>
346
                <at name="rowspan">1</at>
347
                <at name="halign">default</at>
348
                <at name="valign">default</at>
349
                <at name="insets" object="insets">0,0,0,0</at>
350
               </object>
351
              </at>
352
              <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
353
             </super>
354
             <at name="id">embedded.1817131647</at>
355
             <at name="rowspecs">CENTER:DEFAULT:NONE</at>
356
             <at name="colspecs">FILL:DEFAULT:GROW(1.0),FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:NONE</at>
357
             <at name="components">
358
              <object classname="java.util.LinkedList">
359
               <item >
360
                <at name="value">
361
                 <object classname="com.jeta.forms.store.memento.BeanMemento">
362
                  <super classname="com.jeta.forms.store.memento.ComponentMemento">
363
                   <at name="cellconstraints">
364
                    <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
365
                     <at name="column">4</at>
366
                     <at name="row">1</at>
367
                     <at name="colspan">1</at>
368
                     <at name="rowspan">1</at>
369
                     <at name="halign">default</at>
370
                     <at name="valign">default</at>
371
                     <at name="insets" object="insets">0,0,0,0</at>
372
                    </object>
373
                   </at>
374
                   <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
375
                  </super>
376
                  <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
377
                  <at name="beanclass">javax.swing.JButton</at>
378
                  <at name="beanproperties">
379
                   <object classname="com.jeta.forms.store.memento.PropertiesMemento">
380
                    <at name="classname">javax.swing.JButton</at>
381
                    <at name="properties">
382
                     <object classname="com.jeta.forms.store.support.PropertyMap">
383
                      <at name="border">
384
                       <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
385
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
386
                         <at name="name">border</at>
387
                        </super>
388
                        <at name="borders">
389
                         <object classname="java.util.LinkedList">
390
                          <item >
391
                           <at name="value">
392
                            <object classname="com.jeta.forms.store.properties.EmptyBorderProperty">
393
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
394
                              <at name="name">border</at>
395
                             </super>
396
                             <at name="top">2</at>
397
                             <at name="left">2</at>
398
                             <at name="bottom">2</at>
399
                             <at name="right">2</at>
400
                            </object>
401
                           </at>
402
                          </item>
403
                         </object>
404
                        </at>
405
                       </object>
406
                      </at>
407
                      <at name="actionCommand">Ninguno</at>
408
                      <at name="name">btnDeselectAllColumns</at>
409
                      <at name="width">37</at>
410
                      <at name="text">_None</at>
411
                      <at name="height">20</at>
412
                     </object>
413
                    </at>
414
                   </object>
415
                  </at>
416
                 </object>
417
                </at>
418
               </item>
419
               <item >
420
                <at name="value">
421
                 <object classname="com.jeta.forms.store.memento.BeanMemento">
422
                  <super classname="com.jeta.forms.store.memento.ComponentMemento">
423
                   <at name="cellconstraints">
424
                    <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
425
                     <at name="column">2</at>
426
                     <at name="row">1</at>
427
                     <at name="colspan">1</at>
428
                     <at name="rowspan">1</at>
429
                     <at name="halign">default</at>
430
                     <at name="valign">default</at>
431
                     <at name="insets" object="insets">0,0,0,0</at>
432
                    </object>
433
                   </at>
434
                   <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
435
                  </super>
436
                  <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
437
                  <at name="beanclass">javax.swing.JButton</at>
438
                  <at name="beanproperties">
439
                   <object classname="com.jeta.forms.store.memento.PropertiesMemento">
440
                    <at name="classname">javax.swing.JButton</at>
441
                    <at name="properties">
442
                     <object classname="com.jeta.forms.store.support.PropertyMap">
443
                      <at name="border">
444
                       <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
445
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
446
                         <at name="name">border</at>
447
                        </super>
448
                        <at name="borders">
449
                         <object classname="java.util.LinkedList">
450
                          <item >
451
                           <at name="value">
452
                            <object classname="com.jeta.forms.store.properties.EmptyBorderProperty">
453
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
454
                              <at name="name">border</at>
455
                             </super>
456
                             <at name="top">2</at>
457
                             <at name="left">2</at>
458
                             <at name="bottom">2</at>
459
                             <at name="right">2</at>
460
                            </object>
461
                           </at>
462
                          </item>
463
                         </object>
464
                        </at>
465
                       </object>
466
                      </at>
467
                      <at name="actionCommand">Todos</at>
468
                      <at name="name">btnSelectAllColumns</at>
469
                      <at name="width">22</at>
470
                      <at name="text">_All</at>
471
                      <at name="height">20</at>
472
                     </object>
473
                    </at>
474
                   </object>
475
                  </at>
476
                 </object>
477
                </at>
478
               </item>
479
              </object>
480
             </at>
481
             <at name="properties">
482
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
483
               <at name="classname">com.jeta.forms.gui.form.GridView</at>
484
               <at name="properties">
485
                <object classname="com.jeta.forms.store.support.PropertyMap">
486
                 <at name="border">
487
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
488
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
489
                    <at name="name">border</at>
490
                   </super>
491
                   <at name="borders">
492
                    <object classname="java.util.LinkedList"/>
493
                   </at>
494
                  </object>
495
                 </at>
496
                 <at name="name"/>
497
                 <at name="fill">
498
                  <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
499
                   <at name="name">fill</at>
500
                  </object>
501
                 </at>
502
                 <at name="scollBars">
503
                  <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
504
                   <at name="name">scollBars</at>
505
                   <at name="verticalpolicy">21</at>
506
                   <at name="horizontalpolicy">31</at>
507
                   <at name="border">
508
                    <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
509
                     <super classname="com.jeta.forms.store.properties.BorderProperty">
510
                      <at name="name">border</at>
511
                     </super>
512
                     <at name="borders">
513
                      <object classname="java.util.LinkedList">
514
                       <item >
515
                        <at name="value">
516
                         <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
517
                          <super classname="com.jeta.forms.store.properties.BorderProperty">
518
                           <at name="name">border</at>
519
                          </super>
520
                         </object>
521
                        </at>
522
                       </item>
523
                      </object>
524
                     </at>
525
                    </object>
526
                   </at>
527
                  </object>
528
                 </at>
529
                </object>
530
               </at>
531
              </object>
532
             </at>
533
             <at name="cellpainters">
534
              <object classname="com.jeta.forms.store.support.Matrix">
535
               <at name="rows">
536
                <object classname="[Ljava.lang.Object;" size="1">
537
                 <at name="item" index="0">
538
                  <object classname="[Ljava.lang.Object;" size="4"/>
539
                 </at>
540
                </object>
541
               </at>
542
              </object>
543
             </at>
544
             <at name="rowgroups">
545
              <object classname="com.jeta.forms.store.memento.FormGroupSet">
546
               <at name="groups">
547
                <object classname="java.util.HashMap"/>
548
               </at>
549
              </object>
550
             </at>
551
             <at name="colgroups">
552
              <object classname="com.jeta.forms.store.memento.FormGroupSet">
553
               <at name="groups">
554
                <object classname="java.util.HashMap"/>
555
               </at>
556
              </object>
557
             </at>
558
            </object>
559
           </at>
560
          </item>
561
          <item >
562
           <at name="value">
563
            <object classname="com.jeta.forms.store.memento.FormMemento">
564
             <super classname="com.jeta.forms.store.memento.ComponentMemento">
565
              <at name="cellconstraints">
566
               <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
567
                <at name="column">1</at>
568
                <at name="row">3</at>
569
                <at name="colspan">1</at>
570
                <at name="rowspan">1</at>
571
                <at name="halign">default</at>
572
                <at name="valign">default</at>
573
                <at name="insets" object="insets">0,0,0,0</at>
574
               </object>
575
              </at>
576
              <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
577
             </super>
578
             <at name="id">embedded.1413908199</at>
579
             <at name="rowspecs">CENTER:DEFAULT:NONE</at>
580
             <at name="colspecs">FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE,FILL:DEFAULT:NONE</at>
581
             <at name="components">
582
              <object classname="java.util.LinkedList">
583
               <item >
584
                <at name="value">
585
                 <object classname="com.jeta.forms.store.memento.BeanMemento">
586
                  <super classname="com.jeta.forms.store.memento.ComponentMemento">
587
                   <at name="cellconstraints">
588
                    <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
589
                     <at name="column">3</at>
590
                     <at name="row">1</at>
591
                     <at name="colspan">1</at>
592
                     <at name="rowspan">1</at>
593
                     <at name="halign">default</at>
594
                     <at name="valign">default</at>
595
                     <at name="insets" object="insets">0,0,0,0</at>
596
                    </object>
597
                   </at>
598
                   <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
599
                  </super>
600
                  <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
601
                  <at name="beanclass">javax.swing.JButton</at>
602
                  <at name="beanproperties">
603
                   <object classname="com.jeta.forms.store.memento.PropertiesMemento">
604
                    <at name="classname">javax.swing.JButton</at>
605
                    <at name="properties">
606
                     <object classname="com.jeta.forms.store.support.PropertyMap">
607
                      <at name="border">
608
                       <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
609
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
610
                         <at name="name">border</at>
611
                        </super>
612
                        <at name="borders">
613
                         <object classname="java.util.LinkedList">
614
                          <item >
615
                           <at name="value">
616
                            <object classname="com.jeta.forms.store.properties.EmptyBorderProperty">
617
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
618
                              <at name="name">border</at>
619
                             </super>
620
                             <at name="top">2</at>
621
                             <at name="left">2</at>
622
                             <at name="bottom">2</at>
623
                             <at name="right">2</at>
624
                            </object>
625
                           </at>
626
                          </item>
627
                         </object>
628
                        </at>
629
                       </object>
630
                      </at>
631
                      <at name="actionCommand">...</at>
632
                      <at name="name">btnTablesFilter</at>
633
                      <at name="width">13</at>
634
                      <at name="text">...</at>
635
                      <at name="height">20</at>
636
                     </object>
637
                    </at>
638
                   </object>
639
                  </at>
640
                 </object>
641
                </at>
642
               </item>
643
               <item >
644
                <at name="value">
645
                 <object classname="com.jeta.forms.store.memento.BeanMemento">
646
                  <super classname="com.jeta.forms.store.memento.ComponentMemento">
647
                   <at name="cellconstraints">
648
                    <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
649
                     <at name="column">1</at>
650
                     <at name="row">1</at>
651
                     <at name="colspan">1</at>
652
                     <at name="rowspan">1</at>
653
                     <at name="halign">default</at>
654
                     <at name="valign">default</at>
655
                     <at name="insets" object="insets">0,0,0,0</at>
656
                    </object>
657
                   </at>
658
                   <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
659
                  </super>
660
                  <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
661
                  <at name="beanclass">javax.swing.JTextField</at>
662
                  <at name="beanproperties">
663
                   <object classname="com.jeta.forms.store.memento.PropertiesMemento">
664
                    <at name="classname">javax.swing.JTextField</at>
665
                    <at name="properties">
666
                     <object classname="com.jeta.forms.store.support.PropertyMap">
667
                      <at name="border">
668
                       <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
669
                        <super classname="com.jeta.forms.store.properties.BorderProperty">
670
                         <at name="name">border</at>
671
                        </super>
672
                        <at name="borders">
673
                         <object classname="java.util.LinkedList">
674
                          <item >
675
                           <at name="value">
676
                            <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
677
                             <super classname="com.jeta.forms.store.properties.BorderProperty">
678
                              <at name="name">border</at>
679
                             </super>
680
                            </object>
681
                           </at>
682
                          </item>
683
                         </object>
684
                        </at>
685
                       </object>
686
                      </at>
687
                      <at name="name">txtTablesFilter</at>
688
                      <at name="width">233</at>
689
                      <at name="height">22</at>
690
                     </object>
691
                    </at>
692
                   </object>
693
                  </at>
694
                 </object>
695
                </at>
696
               </item>
697
              </object>
698
             </at>
699
             <at name="properties">
700
              <object classname="com.jeta.forms.store.memento.PropertiesMemento">
701
               <at name="classname">com.jeta.forms.gui.form.GridView</at>
702
               <at name="properties">
703
                <object classname="com.jeta.forms.store.support.PropertyMap">
704
                 <at name="border">
705
                  <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
706
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
707
                    <at name="name">border</at>
708
                   </super>
709
                   <at name="borders">
710
                    <object classname="java.util.LinkedList"/>
711
                   </at>
712
                  </object>
713
                 </at>
714
                 <at name="name"/>
715
                 <at name="fill">
716
                  <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
717
                   <at name="name">fill</at>
718
                  </object>
719
                 </at>
720
                 <at name="scollBars">
721
                  <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
722
                   <at name="name">scollBars</at>
723
                   <at name="verticalpolicy">21</at>
724
                   <at name="horizontalpolicy">31</at>
725
                   <at name="border">
726
                    <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
727
                     <super classname="com.jeta.forms.store.properties.BorderProperty">
728
                      <at name="name">border</at>
729
                     </super>
730
                     <at name="borders">
731
                      <object classname="java.util.LinkedList">
732
                       <item >
733
                        <at name="value">
734
                         <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
735
                          <super classname="com.jeta.forms.store.properties.BorderProperty">
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff