Revision 3483 branches/gvSIG_WMSv2/extensions/extWMS/src/com/iver/cit/gvsig/gui/panels/WMSParamsPanel.java

View differences:

WMSParamsPanel.java
49 49
import javax.swing.DefaultListModel;
50 50
import javax.swing.ImageIcon;
51 51
import javax.swing.JButton;
52
import javax.swing.JCheckBox;
52 53
import javax.swing.JComboBox;
53 54
import javax.swing.JList;
54 55
import javax.swing.JPanel;
......
60 61
import org.gvsig.remoteClient.wms.WMSLayer;
61 62

  
62 63
import com.iver.andami.PluginServices;
64
import com.iver.cit.gvsig.gui.beans.JDnDList;
65
import com.iver.cit.gvsig.gui.beans.JDnDListModel;
63 66
import com.iver.cit.gvsig.gui.wizards.FormatListModel;
64
import com.iver.cit.gvsig.gui.wizards.LayerListModel;
67
//import com.iver.cit.gvsig.gui.wizards.LayerListModel;
65 68
import com.iver.cit.gvsig.gui.wizards.LayerTreeModel;
69
import com.iver.cit.gvsig.gui.wizards.SRSListModel;
66 70
import com.iver.cit.gvsig.gui.wizards.WMSWizardData;
67 71
import com.iver.cit.gvsig.gui.wizards.WMSWizardDataSource;
68 72
import com.iver.cit.gvsig.gui.wizards.WizardData;
69 73
import com.iver.cit.gvsig.gui.wizards.WizardListenerSupport;
70
import javax.swing.JCheckBox;
71 74
/**
72 75
 * This class implements the map option panel.
73 76
 * 
......
106 109
	private javax.swing.JPanel tabFormats = null;
107 110
	private JPanel jPanel4 = null;
108 111
	private JTextField jTxtNomCapa = null;
109
	private javax.swing.JList lstSelectedLayers = null;
112
	private JDnDList lstSelectedLayers = null;
110 113
	private javax.swing.JList lstSRSs = null;
111 114
	private javax.swing.JTree treeLayers = null;
112 115
	private javax.swing.JList lstFormats = null;
113
	private LayerListModel selectedLayersModel = new LayerListModel();
116
	private JDnDListModel selectedLayersModel = new JDnDListModel();
114 117
	private WizardListenerSupport listenerSupport;
115 118
	private WMSWizardData data;
116 119
	private WMSWizardDataSource dataSource;
......
402 405
	 * DOCUMENT ME!
403 406
	 */
404 407
	private void delLayer() {
405
		int[] index = lstSelectedLayers.getSelectedIndices();
408
		int[] indices = lstSelectedLayers.getSelectedIndices();
406 409

  
407 410
		ArrayList removeList = new ArrayList();
408
		LayerListModel modelo = (LayerListModel) lstSelectedLayers.getModel();
409
		WMSLayer[] infos = modelo.getElements();
410

  
411
		for (int i = 0; i < index.length; i++) {
412
			removeList.add(infos[index[i]]);
411
        JDnDListModel modelo = ((JDnDListModel) lstSelectedLayers.getModel()); 
412
        ArrayList elements = modelo.getElements();
413
        WMSLayer[] infos = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
414
        
415
		for (int i = 0; i < indices.length; i++) {
416
			removeList.add(infos[indices[i]]);
413 417
		}
414 418

  
415
		modelo.delElements(removeList);
419
		modelo.delIndices(indices);
416 420
		lstSelectedLayers.clearSelection();
417 421
		listenerSupport.callStateChanged(true);
418 422
		//activarVisualizarBotones();
......
432 436
			WMSLayer nodo = (WMSLayer) selecciones[i].getLastPathComponent();
433 437

  
434 438
			//Se a?ade a la lista de layers seleccionados
435
			LayerListModel modelo = (LayerListModel) lstSelectedLayers.getModel();
439
			JDnDListModel modelo = (JDnDListModel) lstSelectedLayers.getModel();
436 440

  
437 441
			if (modelo.addElement(nodo)) {
438 442
				alguno = true;
439 443
			}
444
            modelo.getSize();
440 445
		}
441 446

  
442 447
		if (alguno) {
443
			// activarVisualizarBotones();
444 448
			actualizarSRS();
445 449
		}
450
        
446 451
	}
447 452
	
448 453
	/**
......
452 457
	 */
453 458
	public javax.swing.JList getLstSelectedLayers() {
454 459
		if (lstSelectedLayers == null) {
455
			lstSelectedLayers = new javax.swing.JList();
460
            lstSelectedLayers = new JDnDList();
456 461
			lstSelectedLayers.setModel(selectedLayersModel);
457
			lstSelectedLayers.setSelectionMode(javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
462
			lstSelectedLayers.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_INTERVAL_SELECTION);
458 463
			lstSelectedLayers.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
459 464
			    public void valueChanged(javax.swing.event.ListSelectionEvent e) {
460 465
			        listenerSupport.callStateChanged(isCorretlyConfigured());
......
520 525
	 * DOCUMENT ME!
521 526
	 */
522 527
	public void actualizarSRS() {
523
		WMSLayer[] layers = ((LayerListModel) lstSelectedLayers.getModel()).getElements();
528
        ArrayList elements = ((JDnDListModel) lstSelectedLayers.getModel()).getElements();
529
        WMSLayer[] layers = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
530
		
524 531

  
525 532
		if (layers.length == 0) {
526 533
			lstSRSs.setModel(new DefaultListModel());
......
558 565

  
559 566
	public void setWizardData(WizardData data) {
560 567
		this.data = (WMSWizardData) data;
561
		((LayerListModel) getLstSelectedLayers().getModel()).clear();
568
		((JDnDListModel) getLstSelectedLayers().getModel()).clear();
562 569
		getLstSelectedLayers().repaint();
570
        
563 571
		getLstFormats().setModel(new FormatListModel(this.data.getFormats()));
564 572
		getTreeLayers().setModel(new LayerTreeModel(this.data.getLayer()));
565 573
		/*getLstLayerStyles().setModel(getLstSelectedLayers().getModel());
......
575 583
	}
576 584

  
577 585
	public String getLayersQuery() {
578
		WMSLayer[] layers = ((LayerListModel) getLstSelectedLayers().getModel()).getElements();
579

  
586
        ArrayList elements = ((JDnDListModel) getLstSelectedLayers().getModel()).getElements();
587
        WMSLayer[] layers = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
588
        
580 589
		//Nombre separado por comas de las capas
581 590
		String layersQuery = layers[0].getName();
582 591

  
......
597 606
	}
598 607
	
599 608
    public Rectangle2D getLayersRectangle(){
600
        WMSLayer[] layers = ((LayerListModel) getLstSelectedLayers().getModel()).getElements();
609
        ArrayList elements = ((JDnDListModel) getLstSelectedLayers().getModel()).getElements();
610
        WMSLayer[] layers = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
601 611
        String[] layerNames = new String[layers.length];
602 612
        for (int i = 0; i < layerNames.length; i++) {
603 613
            layerNames[i] = layers[i].getName();
......
677 687
	}
678 688

  
679 689
	public String getQueryableLayerQuery() {
680
		WMSLayer[] layers = ((LayerListModel) getLstSelectedLayers().getModel()).getElements();
681

  
682
		//Nombre separado por comas de las capas
690
        ArrayList elements = ((JDnDListModel) getLstSelectedLayers().getModel()).getElements();
691
        WMSLayer[] layers = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
692
        //Nombre separado por comas de las capas
683 693
		String layersQuery = "";
684 694
		int i;
685 695

  
......
1057 1067
			cmbNamedStyleLayers.setBounds(14, 25, 430, 20);
1058 1068
			cmbNamedStyleLayers.addItemListener(new java.awt.event.ItemListener() { 
1059 1069
				public void itemStateChanged(java.awt.event.ItemEvent e) {    
1060
					setNamedStyleList((String)getCmbNamedStyleLayers().getSelectedItem());
1070
					setNamedStyleList((WMSLayer)getCmbNamedStyleLayers().getSelectedItem());
1061 1071
				}
1062 1072
			});
1063 1073
		}
......
1069 1079
	 * 
1070 1080
	 * @param layerTitle
1071 1081
	 */
1072
	private void setNamedStyleList(String layerTitle){
1073
		WMSLayer[] layers = ((LayerListModel) getLstSelectedLayers()
1074
											    .getModel()).getElements();
1075
		for (int i = 0; i < layers.length; i++) {
1076
			if (layers[i].getName().equals(layerTitle)){
1082
	private void setNamedStyleList(WMSLayer layer){
1083
//        FormatListModel model = (FormatListModel) getLstLayerNamedStyles().getModel();
1084
//        ((FormatListModel) getLstLayerNamedStyles().getModel()).addElements(layer.getNamedStyles());
1085
        if (layer == null) 
1086
            return; 
1087
        ArrayList elements = ((JDnDListModel) getLstSelectedLayers().getModel()).getElements();
1088
        WMSLayer[] layers = (WMSLayer[]) elements.toArray(new WMSLayer[0]);
1089
        for (int i = 0; i < layers.length; i++) {
1090
			if (layers[i].getName().equals(layer.getTitle())){
1077 1091
				String[] namedStyles = (String[])layers[i].getNamedStyles().toArray(new String[0]);
1078 1092
				getLstLayerNamedStyles().setModel(new FormatListModel(namedStyles));		
1079 1093
			}

Also available in: Unified diff