Revision 8688 org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster.wms2/org.gvsig.raster.wms2.swing/org.gvsig.raster.wms2.swing.impl/src/main/java/org/gvsig/raster/wms/swing/impl/DefaultWMSParametersPanelController.java

View differences:

DefaultWMSParametersPanelController.java
70 70
import org.gvsig.fmap.dal.DataServerExplorerPoolEntry;
71 71
import org.gvsig.fmap.dal.DataStoreParameters;
72 72
import org.gvsig.fmap.dal.DataStoreProviderFactory;
73
import org.gvsig.raster.wms.provider.LayerNode;
74
import org.gvsig.raster.wms.provider.LayerNode.Style;
73
import org.gvsig.raster.wms.provider.DefaultWMSLayerNode;
74
import org.gvsig.raster.wms.provider.DefaultWMSRasterServerExplorer;
75
import org.gvsig.raster.wms.provider.WMSLayerNode;
75 76
import org.gvsig.raster.wms.provider.WMSRasterProviderParameters;
76
import org.gvsig.raster.wms.provider.WMSRasterServerExplorer;
77 77
import org.gvsig.raster.wms.provider.WMSRasterServerExplorerParameters;
78
import org.gvsig.raster.wms.provider.WMSStyleData;
78 79
import org.gvsig.raster.wms.swing.api.WMSParametersPanel;
79 80
import org.gvsig.tools.ToolsLocator;
80 81
import org.gvsig.tools.dispose.DisposeUtils;
......
101 102
    private static final int TAB_DIMENSIONS_INDEX = 3;
102 103
    private static final int TAB_FORMATS_INDEX = 4;
103 104
    List<WMSParametersEntry> parameterList;
104
    WMSRasterServerExplorer explorer;
105
    private WMSRasterServerExplorer serverExplorer;
105
    DefaultWMSRasterServerExplorer explorer;
106
    private DefaultWMSRasterServerExplorer serverExplorer;
106 107
    private String format;
107 108
    private String infoFormat;
108
    private List<LayerNode> selectedLayers;
109
    private List<WMSLayerNode> selectedLayers;
109 110
    private String projection = "";
110 111
    private Thread connectionThread;
111 112

  
......
316 317

  
317 318
            @Override
318 319
            public void actionPerformed(ActionEvent e) {
319
                LayerNode node =
320
                    (LayerNode) treeLayersSelector.getLastSelectedPathComponent();
320
                WMSLayerNode node =
321
                    (WMSLayerNode) treeLayersSelector.getLastSelectedPathComponent();
321 322
                if (node == null)
322 323
                    return;
323 324
                if (node.isLeaf()) {
......
402 403
    public List<WMSParametersEntry> getParametersList() {
403 404
        parameterList = new ArrayList<WMSParametersEntry>();
404 405
        if(chkMaintainLayersStruct.isSelected()){
405
            final LayerNode layerNode = (LayerNode) this.serverExplorer.getTreeNode();
406
            final WMSLayerNode layerNode = (WMSLayerNode) this.serverExplorer.getTreeNode();
406 407
            if(anyChildrenIsSelected(layerNode)){
407 408
                final WMSParametersEntry rootEntry = new WMSParametersEntry() {
408 409
                    @Override
......
510 511
     * @param layerNode
511 512
     * @param rootEntry
512 513
     */
513
    private void addChildrenParametersEntries(final LayerNode layerNode, final WMSParametersEntry parent) {
514
    private void addChildrenParametersEntries(final WMSLayerNode layerNode, final WMSParametersEntry parent) {
514 515
        parameterList.add(parent);
515 516
        WMSParametersEntry folderEntry = new WMSParametersEntry() {
516 517
            @Override
......
527 528
            }
528 529
        };
529 530
        parameterList.add(folderEntry);
531
        for(int i=0; i<layerNode.getChildCount(); i++){
532
            WMSLayerNode child = (WMSLayerNode) layerNode.getChildAt(i);
533

  
534
        }
530 535
    }
531 536

  
532 537
//    private List<WMSParametersEntry> addChildrenToParent(final WMSParametersEntry parent, List<WMSLayer> children) {
......
610 615
//        return result;
611 616
//    }
612 617

  
613
    private boolean anyChildrenIsSelected(LayerNode node){
618
    private boolean anyChildrenIsSelected(WMSLayerNode node){
614 619
        if(node.getChildCount()==0){
615 620
            return false;
616 621
        }
617 622
        boolean result = false;
618 623
        for (int i=0; i<node.getChildCount(); i++){
619
            LayerNode child = (LayerNode) node.getChildAt(i);
624
            WMSLayerNode child = (WMSLayerNode) node.getChildAt(i);
620 625
            if(selectedLayers.contains(child)){
621 626
                return true;
622 627
            }
......
651 656
                    parameters.setDynValue(WMSRasterServerExplorerParameters.WMS_OVERRIDE_CAPABILITIES_PARAMETER_NAME,
652 657
                        chkRefreshCache.isSelected()); // "override_capabilities"
653 658

  
654
                    final WMSRasterServerExplorer serverExplorer =
655
                        (WMSRasterServerExplorer) manager.openServerExplorer("WMS", parameters);
659
                    final DefaultWMSRasterServerExplorer serverExplorer =
660
                        (DefaultWMSRasterServerExplorer) manager.openServerExplorer("WMS", parameters);
656 661

  
657 662
                    // List layers = serverExplorer.list();
658 663

  
......
696 701
    }
697 702

  
698 703

  
699
    private void setServerExplorer(WMSRasterServerExplorer serverExplorer) {
704
    private void setServerExplorer(DefaultWMSRasterServerExplorer serverExplorer) {
700 705
        this.serverExplorer = serverExplorer;
701 706

  
702 707
        this.updateComponents();
......
704 709
        List<String> formats = this.serverExplorer.getFormats();
705 710
        List<String> infoFormats = this.serverExplorer.getInfoFormats();
706 711

  
707
        LayerNode layerNode = (LayerNode) this.serverExplorer.getTreeNode();
712
        WMSLayerNode layerNode = (WMSLayerNode) this.serverExplorer.getTreeNode();
708 713
        txtLayerName.setText(layerNode.getTitle());
709 714
        fillLayers(layerNode);
710 715
        fillFormats(formats);
......
884 889
                boolean leaf, int row, boolean hasFocus) {
885 890
                Component comp = super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
886 891
                String text;
887
                if (value instanceof LayerNode) {
888
                    LayerNode layerNode = (LayerNode) value;
892
                if (value instanceof WMSLayerNode) {
893
                    WMSLayerNode layerNode = (WMSLayerNode) value;
889 894
                    if (!chkShowLayerNames.isSelected()) {
890 895
                        text = layerNode.getTitle();
891 896
                    } else {
......
902 907

  
903 908
            public void mouseClicked(MouseEvent e) {
904 909
                if (e.getClickCount() == 1) {
905
                    LayerNode node = (LayerNode) treeLayersSelector.getLastSelectedPathComponent();
910
                    WMSLayerNode node = (WMSLayerNode) treeLayersSelector.getLastSelectedPathComponent();
906 911
                    btnAddLayer.setEnabled(node != null && node.isLeaf());
907 912
                } else if (e.getClickCount() == 2) {
908
                    LayerNode node =
909
                        (LayerNode) treeLayersSelector.getLastSelectedPathComponent();
913
                    WMSLayerNode node =
914
                        (WMSLayerNode) treeLayersSelector.getLastSelectedPathComponent();
910 915
                    if (node == null)
911 916
                        return;
912 917
                    if (node.isLeaf()) {
......
919 924
    }
920 925

  
921 926
    protected void doSelectLayer(Object selected) {
922
        if (selected instanceof LayerNode) {
923
            LayerNode node = (LayerNode) selected;
927
        if (selected instanceof WMSLayerNode) {
928
            WMSLayerNode node = (WMSLayerNode) selected;
924 929
            if (selectedLayers.contains(node)) {
925 930
                return;
926 931
            }
......
982 987
            public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
983 988
                boolean hasFocus, int row, int column) {
984 989

  
985
                if (value instanceof LayerNode) {
986
                    LayerNode node = (LayerNode) value;
990
                if (value instanceof WMSLayerNode) {
991
                    WMSLayerNode node = (WMSLayerNode) value;
987 992
                    String text = "";
988 993
                    if (!chkShowLayerNames.isSelected()) {
989 994
                        text = node.getTitle();
......
1008 1013
    private void updateTblLayers() {
1009 1014
        DefaultTableModel model = (DefaultTableModel) tblLayers.getModel();
1010 1015
        model.setRowCount(0);
1011
        for (Iterator<LayerNode> iterator = selectedLayers.iterator(); iterator.hasNext();) {
1012
            LayerNode row[] = { iterator.next() }; // .getLayer()};
1016
        for (Iterator<WMSLayerNode> iterator = selectedLayers.iterator(); iterator.hasNext();) {
1017
            WMSLayerNode row[] = { iterator.next() }; // .getLayer()};
1013 1018
            model.addRow(row);
1014 1019
        }
1015 1020
        updateTblProjections();
......
1126 1131
                    JPanel leafComponent = new JPanel();
1127 1132
                    leafComponent.setBackground(Color.WHITE);
1128 1133
                    JRadioButton leafRadioButton =
1129
                        new JRadioButton("", ((StyleTreeModel) treeStyles.getModel()).isSelected((Style) value));
1134
                        new JRadioButton("", ((StyleTreeModel) treeStyles.getModel()).isSelected((WMSStyleData) value));
1130 1135

  
1131 1136
                    leafRadioButton.setBackground(Color.WHITE);
1132 1137
                    leafComponent.add(leafRadioButton);
1133
                    leafComponent.add(new JLabel(((Style) value).getTitle()));
1138
                    leafComponent.add(new JLabel(((WMSStyleData) value).getTitle()));
1134 1139
                    return leafComponent;
1135 1140
                } else {
1136 1141
                    super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
1137
                    if (value instanceof LayerNode) {
1138
                        LayerNode layerNode = (LayerNode) value;
1142
                    if (value instanceof WMSLayerNode) {
1143
                        WMSLayerNode layerNode = (WMSLayerNode) value;
1139 1144
                        String text = "";
1140 1145
                        if (layerNode != null) {
1141 1146
                            if (!chkShowLayerNames.isSelected()) {
......
1168 1173
        tabWMS.setEnabledAt(TAB_STYLES_INDEX, size > 0);
1169 1174

  
1170 1175
        StyleTreeModel model = new StyleTreeModel(selectedLayers);
1171
        Iterator<LayerNode> it = selectedLayers.iterator();
1176
        Iterator<WMSLayerNode> it = selectedLayers.iterator();
1172 1177

  
1173 1178
        treeStyles.setModel(model);
1174 1179
        expandAllNodes(treeStyles);
......
1186 1191

  
1187 1192
    class StyleTreeModel implements TreeModel {
1188 1193

  
1189
        List<LayerNode> layerNodes;
1194
        List<WMSLayerNode> layerNodes;
1190 1195

  
1191
        public StyleTreeModel(List<LayerNode> layerNodes) {
1196
        public StyleTreeModel(List<WMSLayerNode> layerNodes) {
1192 1197
            this.layerNodes = layerNodes;
1193 1198
        }
1194 1199

  
1195 1200
        /**
1196 1201
         * Will return true if this style is selected.
1197 1202
         *
1198
         * @param style
1203
         * @param WMSStyle
1199 1204
         * @return
1200 1205
         */
1201
        public boolean isSelected(Style style) {
1202
            Iterator<LayerNode> it = layerNodes.iterator();
1206
        public boolean isSelected(WMSStyleData WMSStyle) {
1207
            Iterator<WMSLayerNode> it = layerNodes.iterator();
1203 1208
            while (it.hasNext()) {
1204
                LayerNode node = (LayerNode) it.next();
1205
                if (node.getSelectedStyle().equals(style)) {
1209
                WMSLayerNode node = (WMSLayerNode) it.next();
1210
                if (node.getSelectedStyle().equals(WMSStyle)) {
1206 1211
                    return true;
1207 1212
                }
1208 1213
            }
......
1218 1223
         */
1219 1224
        public List<String> getStyleSelectionTitles() {
1220 1225
            List<String> styles = new ArrayList<String>();
1221
            for (LayerNode layerNode : layerNodes) {
1222
                Style sty = layerNode.getSelectedStyle();
1226
            for (WMSLayerNode layerNode : layerNodes) {
1227
                WMSStyleData sty = layerNode.getSelectedStyle();
1223 1228
                if (sty == null) {
1224 1229
                    styles.add("");
1225 1230
                } else {
......
1242 1247
         */
1243 1248
        public void setStylesSelection(List<String> styleNames) {
1244 1249
            for (int i = 0; i < layerNodes.size(); i++) {
1245
                LayerNode layerNode = (LayerNode) layerNodes.get(i);
1246
                List<Style> styles = layerNode.getStyles();
1250
                WMSLayerNode layerNode = (WMSLayerNode) layerNodes.get(i);
1251
                List<WMSStyleData> styles = layerNode.getStyles();
1247 1252
                for (int j = 0; j < styles.size(); j++) {
1248
                    Style sty = (Style) styles.get(j);
1253
                    WMSStyleData sty = (WMSStyleData) styles.get(j);
1249 1254
                    if (sty.getName().equals((String) styleNames.get(i))) {
1250 1255
                        layerNode.setSelectedStyleIndex(j);
1251 1256
                        break;
......
1265 1270
                Object[] objects = selectionPath.getPath();
1266 1271
                Object item = objects[objects.length - 1];
1267 1272
                if (isLeaf(item)) {
1268
                    Style style = (Style) item;
1269
                    LayerNode layerNode = (LayerNode) selectionPath.getParentPath().getLastPathComponent();
1270
                    List<Style> styles = layerNode.getStyles();
1273
                    WMSStyleData style = (WMSStyleData) item;
1274
                    WMSLayerNode layerNode = (WMSLayerNode) selectionPath.getParentPath().getLastPathComponent();
1275
                    List<WMSStyleData> styles = layerNode.getStyles();
1271 1276
                    for (int i = 0; i < styles.size(); i++) {
1272
                        Style sty = (Style) styles.get(i);
1277
                        WMSStyleData sty = (WMSStyleData) styles.get(i);
1273 1278
                        if (sty.getName().equals(style.getName())) {
1274 1279
                            layerNode.setSelectedStyleIndex(i);
1275 1280
                            return;
......
1299 1304
            if (parent.equals(getRoot())) {
1300 1305
                count = layerNodes.size();
1301 1306
            } else {
1302
                count = ((LayerNode) parent).getStyles().size();
1307
                count = ((WMSLayerNode) parent).getStyles().size();
1303 1308
            }
1304 1309
            return count;
1305 1310
        }
......
1310 1315
         * @see javax.swing.tree.TreeModel#isLeaf(java.lang.Object)
1311 1316
         */
1312 1317
        public boolean isLeaf(Object node) {
1313
            return (node instanceof Style);
1318
            return (node instanceof WMSStyleData);
1314 1319
        }
1315 1320

  
1316 1321
        /*
......
1319 1324
         * @see javax.swing.tree.TreeModel#getChild(java.lang.Object, int)
1320 1325
         */
1321 1326
        public Object getChild(Object parent, int index) {
1322
            if (parent instanceof Style)
1327
            if (parent instanceof WMSStyleData)
1323 1328
                return null;
1324 1329
            if (parent.equals(getRoot()))
1325 1330
                return layerNodes.get(index);
1326 1331

  
1327
            return ((LayerNode) parent).getStyles().get(index);
1332
            return ((WMSLayerNode) parent).getStyles().get(index);
1328 1333
        }
1329 1334

  
1330 1335
        /*
......
1334 1339
         * java.lang.Object)
1335 1340
         */
1336 1341
        public int getIndexOfChild(Object parent, Object child) {
1337
            if (parent instanceof Style) {
1342
            if (parent instanceof WMSStyleData) {
1338 1343
                return -1;
1339 1344
            }
1340 1345

  
......
1345 1350
                    }
1346 1351
                }
1347 1352
            } else {
1348
                LayerNode node = (LayerNode)parent;
1353
                WMSLayerNode node = (WMSLayerNode)parent;
1349 1354
                for (int i = 0; i < node.getStyles().size(); i++) {
1350 1355
                    if (node.getStyles().get(i).equals(child)) {
1351 1356
                        return i;
......
1461 1466
        DataStoreProviderFactory factory = manager.getStoreProviderFactory("WMS");
1462 1467
        WMSRasterProviderParameters providerParameters = (WMSRasterProviderParameters) factory.createParameters();
1463 1468
        List<String> layers = new ArrayList(selectedLayers.size());
1464
        for (Iterator<LayerNode> iterator = selectedLayers.iterator(); iterator.hasNext();) {
1465
            LayerNode layer = iterator.next();
1469
        for (Iterator<WMSLayerNode> iterator = selectedLayers.iterator(); iterator.hasNext();) {
1470
            WMSLayerNode layer = iterator.next();
1466 1471
            layers.add(layer.getName());
1467 1472
        }
1468 1473

  
......
1481 1486
    }
1482 1487

  
1483 1488

  
1484
    private WMSRasterProviderParameters getProviderParameters(LayerNode layer) {
1489
    private WMSRasterProviderParameters getProviderParameters(WMSLayerNode layer) {
1485 1490
        DataManager manager = DALLocator.getDataManager();
1486 1491
        DataStoreProviderFactory factory = manager.getStoreProviderFactory("WMS");
1487 1492
        WMSRasterProviderParameters providerParameters = (WMSRasterProviderParameters) factory.createParameters();
......
1504 1509

  
1505 1510
    private List<String> getStyles() {
1506 1511
        List<String> styles = new ArrayList<>();
1507
        Iterator<LayerNode> it = selectedLayers.iterator();
1512
        Iterator<WMSLayerNode> it = selectedLayers.iterator();
1508 1513
        while (it.hasNext()) {
1509
            LayerNode layerNode = (LayerNode) it.next();
1510
            Style selectedStyle = layerNode.getSelectedStyle();
1514
            WMSLayerNode layerNode = (WMSLayerNode) it.next();
1515
            WMSStyleData selectedStyle = layerNode.getSelectedStyle();
1511 1516
            if(selectedStyle==null){
1512 1517
                styles.add("");
1513 1518
            } else {
......
1524 1529
    private void doRemoveRow(int selectedRow) {
1525 1530
        DefaultTableModel model = (DefaultTableModel) tblLayers.getModel();
1526 1531
        // WMSLayer layer = (WMSLayer)model.getValueAt(selectedRow, 0);
1527
        LayerNode layerNode = selectedLayers.get(selectedRow);
1532
        WMSLayerNode layerNode = selectedLayers.get(selectedRow);
1528 1533
        selectedLayers.remove(layerNode); // new LayerNode(layer));
1529 1534
        updateTblLayers();
1530 1535
    }

Also available in: Unified diff