Revision 37422

View differences:

trunk/extensions/extTableImport/src/org/gvsig/tableImport/addgeominfo/gui/AddGeometricInfoPanel.java
64 64
import javax.swing.tree.TreePath;
65 65

  
66 66
import org.apache.log4j.Logger;
67

  
68
import org.gvsig.fmap.swing.toc.TOC;
67 69
import org.gvsig.gui.beans.AcceptCancelPanel;
68 70
import org.gvsig.gui.beans.comboboxconfigurablelookup.DefaultComboBoxConfigurableLookUpModel;
69 71
import org.gvsig.gui.beans.comboboxconfigurablelookup.JComboBoxConfigurableLookUp;
......
102 104
import com.iver.cit.gvsig.project.documents.table.gui.Table;
103 105
import com.iver.cit.gvsig.project.documents.view.gui.View;
104 106
import com.iver.cit.gvsig.project.documents.view.toc.TocItemBranch;
105
import com.iver.cit.gvsig.project.documents.view.toc.gui.TOC;
106 107
import com.iver.utiles.swing.JComboBox;
107 108

  
108 109
/**
......
1228 1229
					}
1229 1230

  
1230 1231
					/* 1.2- Stores the active layers */
1231
					final ArrayList activeLayers = getActiveLayerIndexes(view.getTOC().getTree());
1232
					final FLayer[] activeLayers = getActiveLayers(view.getTOC());
1232 1233

  
1233 1234
					/* 2- Creates the process */
1234 1235
					AddGeometricInfoProcess iprocess = new AddGeometricInfoProcess(PluginServices.getText(this, "Add_geometric_information_to_layer_process"), PluginServices.getText(this, "Ongoing_process_please_wait"), view, layer, ((DefaultListModel)getAttributesAddedList().getModel()).toArray());
......
1271 1272
							}
1272 1273

  
1273 1274
							/* 8- Restores the active layers */
1274
							restoreActiveLayers(view.getTOC().getTree(), activeLayers);
1275
							restoreActiveLayers(view.getTOC(), activeLayers);
1275 1276

  
1276 1277
							/* 9- Writes in the gvSIG log the results of the process */
1277 1278
							String text = "\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n" +
......
1617 1618
	public Object getWindowProfile() {
1618 1619
		return WindowInfo.DIALOG_PROFILE;
1619 1620
	}
1621
	
1622
	   
1623
	private FLayer[] getActiveLayers(TOC toc) {
1624
	    return toc.getSelectedLayers();
1625
	}
1626
	
1627
	   
1628
	private void restoreActiveLayers(TOC toc, FLayer[] ll) {
1629
	        
1630
	        int len = ll.length;
1631
	        toc.clearSelection();
1632
	        for (int i=0; i<len; i++) {
1633
	            toc.selectLayer(ll[i]);
1634
	        }
1635
	}
1620 1636
}
trunk/extensions/extQuickInfo/src/org/gvsig/quickInfo/tools/QuickInfoListener.java
63 63
import com.iver.cit.gvsig.fmap.core.FShape;
64 64
import com.iver.cit.gvsig.fmap.core.GeometryUtilities;
65 65
import com.iver.cit.gvsig.fmap.core.IGeometry;
66
import com.iver.cit.gvsig.fmap.layers.CancelationException;
66 67
import com.iver.cit.gvsig.fmap.layers.FBitSet;
68
import com.iver.cit.gvsig.fmap.layers.FLayer;
69
import com.iver.cit.gvsig.fmap.layers.FLayers;
67 70
import com.iver.cit.gvsig.fmap.layers.FLyrVect;
71
import com.iver.cit.gvsig.fmap.layers.LayerCollectionEvent;
72
import com.iver.cit.gvsig.fmap.layers.LayerCollectionListener;
73
import com.iver.cit.gvsig.fmap.layers.LayerEvent;
74
import com.iver.cit.gvsig.fmap.layers.LayerListener;
75
import com.iver.cit.gvsig.fmap.layers.LayerPositionEvent;
68 76
import com.iver.cit.gvsig.fmap.layers.ReadableVectorial;
69 77
import com.iver.cit.gvsig.fmap.layers.layerOperations.AlphanumericData;
70 78
import com.iver.cit.gvsig.fmap.layers.layerOperations.InfoByPoint;
......
91 99
	private QuickInfoFLayerSelected infoSelected;
92 100
	public static final int DEFAULT_PIXEL_TOLERANCE = 2;
93 101
	private int pixel_tolerance;
94
	private TreeModelListener treeModelListener;
95
	private MouseAdapter treeMouseAdapter;
102
	
103
	//private TreeModelListener treeModelListener;
104
	private LayerCollectionListener layerRemovedListener = null; 
105
	// private MouseAdapter treeMouseAdapter;
106
	private LayerListener layerNotVisibleListener = null;
107
	
108
	
96 109
	private int oldInitialDelay;
97 110
	private int oldReshowDelay;
98 111
//	private int oldDismissDelay;
......
129 142
//		ToolTipManager.sharedInstance().setInitialDelay(100000); // By default is 60000
130 143

  
131 144
		view = (View)PluginServices.getMDIManager().getActiveWindow();
132
		view.getTOC().getTree().getModel().addTreeModelListener(getTreeModelListener(view));
133 145
		
146
		FLayers lyrs = infoSelected.getLayer().getParentLayer();
147
		if (lyrs != null) {
148
		    lyrs.addLayerCollectionListener(getLayerRemovedListener(view));
149
		}
150
		// view.getTOC().getTree().getModel().addTreeModelListener(getTreeModelListener(view));
151
		
134 152
		// Adds new listener to remove this tool when the visibility of the layer has changed to not visible
135
		view.getTOC().getTree().addMouseListener(getTreeMouseAdapter(view, qil));
153
		qil.getLayer().addLayerListener(getLayerNotVisibleListener(qil));
154
		// view.getTOC().getTree().addMouseListener(getTreeMouseAdapter(view, qil));
136 155
	}
137 156

  
138 157
	/*
......
790 809
		return null;
791 810
	}
792 811
	
793
	/**
794
	 * <p>Creates a new <code>TreeModelListener</code> to remove this tool when the layer node is removed from
795
	 *  the TOC of <code>view</code>.</p> 
796
	 * 
797
	 * @param vista the view
798
	 * @return javax.swing.event.TreeModelListener
799
	 */
800
	private TreeModelListener getTreeModelListener(final View view) {
801
		if (treeModelListener == null) {
802
			treeModelListener = new TreeModelListener() {
803
				/*
804
				 * (non-Javadoc)
805
				 * @see javax.swing.event.TreeModelListener#treeNodesChanged(javax.swing.event.TreeModelEvent)
806
				 */
807
				public void treeNodesChanged(TreeModelEvent e) {
808
				}
812
//	/**
813
//	 * <p>Creates a new <code>TreeModelListener</code> to remove this tool when the layer node is removed from
814
//	 *  the TOC of <code>view</code>.</p> 
815
//	 * 
816
//	 * @param vista the view
817
//	 * @return javax.swing.event.TreeModelListener
818
//	 */
819
//	private TreeModelListener getTreeModelListener(final View view) {
820
//	    
821
//	    LayerCollectionListener ll;
822
//	    
823
//		if (treeModelListener == null) {
824
//			treeModelListener = new TreeModelListener() {
825
//				/*
826
//				 * (non-Javadoc)
827
//				 * @see javax.swing.event.TreeModelListener#treeNodesChanged(javax.swing.event.TreeModelEvent)
828
//				 */
829
//				public void treeNodesChanged(TreeModelEvent e) {
830
//				}
831
//
832
//				/*
833
//				 * (non-Javadoc)
834
//				 * @see javax.swing.event.TreeModelListener#treeNodesInserted(javax.swing.event.TreeModelEvent)
835
//				 */
836
//				public void treeNodesInserted(TreeModelEvent e) {
837
//				}
838
//
839
//				/*
840
//				 * (non-Javadoc)
841
//				 * @see javax.swing.event.TreeModelListener#treeNodesRemoved(javax.swing.event.TreeModelEvent)
842
//				 */
843
//				public void treeNodesRemoved(TreeModelEvent e) {
844
//				}
845
//
846
//				/*
847
//				 * (non-Javadoc)
848
//				 * @see javax.swing.event.TreeModelListener#treeStructureChanged(javax.swing.event.TreeModelEvent)
849
//				 */
850
//				public void treeStructureChanged(TreeModelEvent e) {
851
//					if (!findLayer(view.getTOC().getTree())) {
852
//						view.getTOC().getTree().removeMouseListener(treeMouseAdapter);
853
//						view.getTOC().getTree().getModel().removeTreeModelListener(treeModelListener);
854
//						mapControl.removeCombinedTool();
855
//						mapControl.setToolTipText(null);
856
//						ToolTipManager.sharedInstance().setInitialDelay(oldInitialDelay);
857
//						ToolTipManager.sharedInstance().setReshowDelay(oldReshowDelay);
858
////						ToolTipManager.sharedInstance().setDismissDelay(oldDismissDelay);
859
//					}
860
//				}
861
//			};
862
//		}
863
//		
864
//		return treeModelListener;
865
//	}
866
	
867
	
809 868

  
810
				/*
811
				 * (non-Javadoc)
812
				 * @see javax.swing.event.TreeModelListener#treeNodesInserted(javax.swing.event.TreeModelEvent)
813
				 */
814
				public void treeNodesInserted(TreeModelEvent e) {
815
				}
869
    private LayerCollectionListener getLayerRemovedListener(final View view) {
870
        
871
        if (layerRemovedListener == null) {
872
            layerRemovedListener = new LayerRemovedListener(infoSelected.getLayer());
873
        }
874
        
875
        return layerRemovedListener;
876
    }
816 877

  
817
				/*
818
				 * (non-Javadoc)
819
				 * @see javax.swing.event.TreeModelListener#treeNodesRemoved(javax.swing.event.TreeModelEvent)
820
				 */
821
				public void treeNodesRemoved(TreeModelEvent e) {
822
				}
823

  
824
				/*
825
				 * (non-Javadoc)
826
				 * @see javax.swing.event.TreeModelListener#treeStructureChanged(javax.swing.event.TreeModelEvent)
827
				 */
828
				public void treeStructureChanged(TreeModelEvent e) {
829
					if (!findLayer(view.getTOC().getTree())) {
830
						view.getTOC().getTree().removeMouseListener(treeMouseAdapter);
831
						view.getTOC().getTree().getModel().removeTreeModelListener(treeModelListener);
832
						mapControl.removeCombinedTool();
833
						mapControl.setToolTipText(null);
834
						ToolTipManager.sharedInstance().setInitialDelay(oldInitialDelay);
835
						ToolTipManager.sharedInstance().setReshowDelay(oldReshowDelay);
836
//						ToolTipManager.sharedInstance().setDismissDelay(oldDismissDelay);
837
					}
838
				}
839
			};
840
		}
841
		
842
		return treeModelListener;
843
	}
844 878
	
845
	/**
846
	 * <p>Creates a new <code>MouseAdapter</code> to remove this tool when the layer changes its visibility
847
	 *  to <i>invisible</i> in the TOC of the <code>view</code>.</p> 
848
	 * 
849
	 * @param view the view
850
	 * @param qil data stored to display by this tool
851
	 * @return java.awt.event.MouseAdapter
852
	 */
853
	private MouseAdapter getTreeMouseAdapter(final View view, final QuickInfoFLayerSelected qil) {
854
		if (treeMouseAdapter == null) {
855
			treeMouseAdapter = new MouseAdapter() {
856
				/*
857
				 * (non-Javadoc)
858
				 * @see java.awt.event.MouseAdapter#mousePressed(java.awt.event.MouseEvent)
859
				 */
860
				public void mousePressed(MouseEvent e) {
861
					TreePath tp = ((JTree)e.getSource()).getPathForLocation(e.getX(), e.getY());
862
					
863
					if (tp != null) {
864
						DefaultMutableTreeNode dmtn = (DefaultMutableTreeNode)tp.getLastPathComponent();
865
						
866
						if (dmtn != null) {
867
							TocItemBranch tib = (TocItemBranch)dmtn.getUserObject();
868
							
869
							if (tib != null) {
879
//	/**
880
//	 * <p>Creates a new <code>MouseAdapter</code> to remove this tool when the layer changes its visibility
881
//	 *  to <i>invisible</i> in the TOC of the <code>view</code>.</p> 
882
//	 * 
883
//	 * @param view the view
884
//	 * @param qil data stored to display by this tool
885
//	 * @return java.awt.event.MouseAdapter
886
//	 */
887
//	private MouseAdapter getTreeMouseAdapter(final View view, final QuickInfoFLayerSelected qil) {
888
//		if (treeMouseAdapter == null) {
889
//			treeMouseAdapter = new MouseAdapter() {
890
//				/*
891
//				 * (non-Javadoc)
892
//				 * @see java.awt.event.MouseAdapter#mousePressed(java.awt.event.MouseEvent)
893
//				 */
894
//				public void mousePressed(MouseEvent e) {
895
//					TreePath tp = ((JTree)e.getSource()).getPathForLocation(e.getX(), e.getY());
896
//					
897
//					if (tp != null) {
898
//						DefaultMutableTreeNode dmtn = (DefaultMutableTreeNode)tp.getLastPathComponent();
899
//						
900
//						if (dmtn != null) {
901
//							TocItemBranch tib = (TocItemBranch)dmtn.getUserObject();
902
//							
903
//							if (tib != null) {
904
//
905
//								if ((tib.getLayer() != null) && (tib.getLayer().equals(qil.getLayer())) && (! tib.getLayer().isVisible())) {
906
//									view.getTOC().getTree().removeMouseListener(treeMouseAdapter);
907
//									view.getTOC().getTree().getModel().removeTreeModelListener(treeModelListener);
908
////									ToolTipManager.sharedInstance().setDismissDelay(oldDismissDelay);
909
//								}
910
//							}
911
//						}
912
//					}
913
//				}
914
//			};
915
//		}
916
//		
917
//		return treeMouseAdapter;
918
//	}
919
    
920
    
870 921

  
871
								if ((tib.getLayer() != null) && (tib.getLayer().equals(qil.getLayer())) && (! tib.getLayer().isVisible())) {
872
									view.getTOC().getTree().removeMouseListener(treeMouseAdapter);
873
									view.getTOC().getTree().getModel().removeTreeModelListener(treeModelListener);
874
									mapControl.removeCombinedTool();
875
									mapControl.setToolTipText(null);
876
									ToolTipManager.sharedInstance().setInitialDelay(oldInitialDelay);
877
									ToolTipManager.sharedInstance().setReshowDelay(oldReshowDelay);
878
//									ToolTipManager.sharedInstance().setDismissDelay(oldDismissDelay);
879
								}
880
							}
881
						}
882
					}
883
				}
884
			};
885
		}
886
		
887
		return treeMouseAdapter;
888
	}
922

  
923
    private LayerListener getLayerNotVisibleListener(final QuickInfoFLayerSelected qil) {
924
        if (layerNotVisibleListener == null) {
925
            layerNotVisibleListener = new LayerVisibilityListener(qil.getLayer());
926
        }
927
        return layerNotVisibleListener;
928

  
929
    }
889 930
	
890 931
	/**
891 932
	 * <p>Gets the pixel tolerance used by this tool.</p>
......
992 1033
    public void setNumberOfEventsToIgnoreInEditionMode(short n) {
993 1034
    	eventsToIgnoreInEditionMode = n;
994 1035
    }
1036
    
1037
    
1038
    
1039
    private class LayerRemovedListener implements LayerCollectionListener {
1040

  
1041
        private FLayer lyr = null;
1042
        
1043
        public LayerRemovedListener(FLayer _lyr) {
1044
            lyr = _lyr;
1045
        }
1046
        
1047
        public void layerAdded(LayerCollectionEvent e) {
1048
        }
1049

  
1050
        public void layerAdding(LayerCollectionEvent e)
1051
            throws CancelationException {
1052
        }
1053

  
1054
        public void layerMoved(LayerPositionEvent e) {
1055
        }
1056

  
1057
        public void layerMoving(LayerPositionEvent e)
1058
            throws CancelationException {
1059
        }
1060

  
1061
        public void layerRemoved(LayerCollectionEvent e) {
1062
            if (e.getAffectedLayer() == lyr) {
1063
                
1064
                if (layerRemovedListener != null) {
1065
                    lyr.getParentLayer().removeLayerCollectionListener(layerRemovedListener);
1066
                }
1067
                mapControl.removeCombinedTool();
1068
                mapControl.setToolTipText(null);
1069
                ToolTipManager.sharedInstance().setInitialDelay(oldInitialDelay);
1070
                ToolTipManager.sharedInstance().setReshowDelay(oldReshowDelay);
1071
            }
1072
        }
1073

  
1074
        public void layerRemoving(LayerCollectionEvent e)
1075
            throws CancelationException {
1076
        }
1077

  
1078
        public void visibilityChanged(LayerCollectionEvent e)
1079
            throws CancelationException {
1080
        }
1081
        
1082
    }
1083
    
1084
    
1085
    public class LayerVisibilityListener implements LayerListener {
1086

  
1087
        FLayer lyr = null;
1088
        
1089
        public LayerVisibilityListener(FLayer _lyr) {
1090
            lyr = _lyr;
1091
        }
1092
        
1093
        public void activationChanged(LayerEvent e) {
1094
        }
1095

  
1096
        public void drawValueChanged(LayerEvent e) {
1097
        }
1098

  
1099
        public void editionChanged(LayerEvent e) {
1100
        }
1101

  
1102
        public void nameChanged(LayerEvent e) {
1103
        }
1104

  
1105
        public void visibilityChanged(LayerEvent e) {
1106
            if (!e.getSource().isVisible()) {
1107
                
1108
                if (layerNotVisibleListener != null) {
1109
                    e.getSource().removeLayerListener(layerNotVisibleListener);
1110
                }
1111
                
1112
                mapControl.removeCombinedTool();
1113
                mapControl.setToolTipText(null);
1114
                ToolTipManager.sharedInstance().setInitialDelay(oldInitialDelay);
1115
                ToolTipManager.sharedInstance().setReshowDelay(oldReshowDelay);
1116
            }
1117
            
1118
        }
1119
        
1120
    }
995 1121
 }
trunk/extensions/extSelectionTools/src/org/gvsig/selectionTools/tools/buffer/gui/BufferConfigurationPanel.java
544 544
									}
545 545
								}
546 546

  
547
								view.getTOC().setVisible(false);
548
								view.getTOC().setVisible(true);
547
								view.getTOC().getComponent().setVisible(false);
548
								view.getTOC().getComponent().setVisible(true);
549 549
							}
550 550

  
551 551
							/* 6- Writes in the gvSIG log the results of the process */
trunk/extensions/extDerivedGeometries/src/es/iver/derivedGeom/gui/AddGeometricInfoPanel.java
64 64
import javax.swing.tree.TreePath;
65 65

  
66 66
import org.apache.log4j.Logger;
67

  
68
import org.gvsig.fmap.swing.toc.TOC;
67 69
import org.gvsig.gui.beans.AcceptCancelPanel;
68 70
import org.gvsig.gui.beans.comboboxconfigurablelookup.DefaultComboBoxConfigurableLookUpModel;
69 71
import org.gvsig.gui.beans.comboboxconfigurablelookup.JComboBoxConfigurableLookUp;
......
98 100
import com.iver.cit.gvsig.project.documents.table.gui.Table;
99 101
import com.iver.cit.gvsig.project.documents.view.gui.View;
100 102
import com.iver.cit.gvsig.project.documents.view.toc.TocItemBranch;
101
import com.iver.cit.gvsig.project.documents.view.toc.gui.TOC;
102 103
import com.iver.utiles.swing.JComboBox;
103 104

  
104 105
import es.iver.derivedGeom.process.AddGeometricInfoProcess;
......
1232 1233
					}
1233 1234

  
1234 1235
					/* 1.2- Stores the active layers */
1235
					final ArrayList activeLayers = getActiveLayerIndexes(view.getTOC().getTree());
1236
					final FLayer[] activeLayers = getActiveLayers(view.getTOC());
1236 1237

  
1237 1238
					/* 2- Creates the process */
1238 1239
					AddGeometricInfoProcess iprocess = new AddGeometricInfoProcess(PluginServices.getText(this, "Add_geometric_information_to_layer_process"), PluginServices.getText(this, "Ongoing_process_please_wait"), view, layer, ((DefaultListModel)getAttributesAddedList().getModel()).toArray());
......
1275 1276
							}
1276 1277

  
1277 1278
							/* 8- Restores the active layers */
1278
							restoreActiveLayers(view.getTOC().getTree(), activeLayers);
1279
							restoreActiveLayers(view.getTOC(), activeLayers);
1279 1280

  
1280 1281
							/* 9- Writes in the gvSIG log the results of the process */
1281 1282
							String text = "\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n" +
......
1532 1533
	 * 
1533 1534
	 * @return indexes of the active layers
1534 1535
	 */
1535
	private ArrayList getActiveLayerIndexes(JTree tree) {
1536
		TreePath tPath;
1537
		Object node;
1538
		Object userObject;
1539
		ArrayList rows = new ArrayList();
1540
		
1541
		try {
1542
			for (int row = 0; row < tree.getRowCount(); row++) {
1543
				tPath = tree.getPathForRow(row);
1544
				node = tPath.getLastPathComponent();
1545
				
1546
				if (node instanceof DefaultMutableTreeNode) {
1547
					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1548
					
1549
					if (userObject instanceof TocItemBranch) {
1550
						FLayer layer = ((TocItemBranch)userObject).getLayer();
1551
						
1552
						if (layer.isActive())
1553
							rows.add(new Integer(row));
1554
					}
1555
				}
1556
			}
1557
		}
1558
		catch (Exception e) {
1559
			JOptionPane.showMessageDialog(this, PluginServices.getText(this, "Failed_saving_active_layer_indexes"), PluginServices.getText(this, "Error"), JOptionPane.ERROR_MESSAGE);
1560
		}
1561
		return rows;
1536
	private FLayer[] getActiveLayers(TOC toc) {
1537
	    
1538
	    return toc.getSelectedLayers();
1539
//	    FLayer[] ll = toc.getSelectedLayers()
1540
//		TreePath tPath;
1541
//		Object node;
1542
//		Object userObject;
1543
//		ArrayList rows = new ArrayList();
1544
//		
1545
//		try {
1546
//			for (int row = 0; row < tree.getRowCount(); row++) {
1547
//				tPath = tree.getPathForRow(row);
1548
//				node = tPath.getLastPathComponent();
1549
//				
1550
//				if (node instanceof DefaultMutableTreeNode) {
1551
//					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1552
//					
1553
//					if (userObject instanceof TocItemBranch) {
1554
//						FLayer layer = ((TocItemBranch)userObject).getLayer();
1555
//						
1556
//						if (layer.isActive())
1557
//							rows.add(new Integer(row));
1558
//					}
1559
//				}
1560
//			}
1561
//		}
1562
//		catch (Exception e) {
1563
//			JOptionPane.showMessageDialog(this, PluginServices.getText(this, "Failed_saving_active_layer_indexes"), PluginServices.getText(this, "Error"), JOptionPane.ERROR_MESSAGE);
1564
//		}
1565
//		return rows;
1562 1566
	}
1563 1567
	
1564 1568
	/**
......
1567 1571
	 * @param tree view's TOC's tree
1568 1572
	 * @param rows the rows to restore
1569 1573
	 */
1570
	private void restoreActiveLayers(JTree tree, ArrayList rows) {
1571
		TreePath tPath;
1572
		Object node;
1573
		Object userObject;
1574
		int row;
1575
		FLayer layer;
1576

  
1577
		try {
1578
			if ((tree == null) || (rows == null))
1579
				return;
1580
			
1581
			// First sets all not active
1582
			for (row = 0; row < tree.getRowCount(); row ++) {
1583
				tPath = tree.getPathForRow(row);
1584
				node = tPath.getLastPathComponent();
1585
	
1586
				if (node instanceof DefaultMutableTreeNode) {
1587
					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1588
	
1589
					if (userObject instanceof TocItemBranch) {
1590
						layer = ((TocItemBranch)userObject).getLayer();
1591
	
1592
						layer.setActive(false);
1593
					}
1594
				}
1595
			}
1596
			
1597
			// Second set active only the required layers
1598
			for (int i = 0; i < rows.size(); i ++) {
1599
				row = ((Integer)rows.get(i)).intValue();
1600
				
1601
				tPath = tree.getPathForRow(row);
1602
				node = tPath.getLastPathComponent();
1603
				
1604
				if (node instanceof DefaultMutableTreeNode) {
1605
					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1606
					
1607
					if (userObject instanceof TocItemBranch) {
1608
						layer = ((TocItemBranch)userObject).getLayer();
1609
						
1610
						layer.setActive(true);
1611
					}
1612
				}
1613
			}
1614
		}
1615
		catch (Exception e) {
1616
			JOptionPane.showMessageDialog(this, PluginServices.getText(this, "Failed_restoring_active_layers"), PluginServices.getText(this, "Error"), JOptionPane.ERROR_MESSAGE);
1617
		}
1574
	private void restoreActiveLayers(TOC toc, FLayer[] ll) {
1575
	    
1576
	    int len = ll.length;
1577
        toc.clearSelection();
1578
	    for (int i=0; i<len; i++) {
1579
	        toc.selectLayer(ll[i]);
1580
	    }
1581
//		TreePath tPath;
1582
//		Object node;
1583
//		Object userObject;
1584
//		int row;
1585
//		FLayer layer;
1586
//
1587
//		try {
1588
//			if ((tree == null) || (rows == null))
1589
//				return;
1590
//			
1591
//			// First sets all not active
1592
//			for (row = 0; row < tree.getRowCount(); row ++) {
1593
//				tPath = tree.getPathForRow(row);
1594
//				node = tPath.getLastPathComponent();
1595
//	
1596
//				if (node instanceof DefaultMutableTreeNode) {
1597
//					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1598
//	
1599
//					if (userObject instanceof TocItemBranch) {
1600
//						layer = ((TocItemBranch)userObject).getLayer();
1601
//	
1602
//						layer.setActive(false);
1603
//					}
1604
//				}
1605
//			}
1606
//			
1607
//			// Second set active only the required layers
1608
//			for (int i = 0; i < rows.size(); i ++) {
1609
//				row = ((Integer)rows.get(i)).intValue();
1610
//				
1611
//				tPath = tree.getPathForRow(row);
1612
//				node = tPath.getLastPathComponent();
1613
//				
1614
//				if (node instanceof DefaultMutableTreeNode) {
1615
//					userObject = ((DefaultMutableTreeNode)node).getUserObject();
1616
//					
1617
//					if (userObject instanceof TocItemBranch) {
1618
//						layer = ((TocItemBranch)userObject).getLayer();
1619
//						
1620
//						layer.setActive(true);
1621
//					}
1622
//				}
1623
//			}
1624
//		}
1625
//		catch (Exception e) {
1626
//			JOptionPane.showMessageDialog(this, PluginServices.getText(this, "Failed_restoring_active_layers"), PluginServices.getText(this, "Error"), JOptionPane.ERROR_MESSAGE);
1627
//		}
1618 1628
	}
1619 1629

  
1620 1630
	public Object getWindowProfile() {
trunk/extensions/extDerivedGeometries/src/es/iver/derivedGeom/gui/DerivedGeometryControlPanel.java
1245 1245
						 */
1246 1246
						public void componentHidden(ComponentEvent e) {
1247 1247
							/* Forces to refresh the TOC */
1248
							f_view.getTOC().setVisible(false);
1249
							f_view.getTOC().setVisible(true);
1248
							f_view.getTOC().getComponent().setVisible(false);
1249
						    f_view.getTOC().getComponent().setVisible(true);
1250 1250
							f_iTask.getProgressPanel().dispose();
1251 1251
							
1252 1252
							/* Adds listener to be notified by a layer removing */

Also available in: Unified diff