Revision 24759 branches/v2_0_0_prep/applications/appgvSIG/src/com/iver/cit/gvsig/ViewSelectionControls.java
ViewSelectionControls.java | ||
---|---|---|
96 | 96 |
package com.iver.cit.gvsig; |
97 | 97 |
|
98 | 98 |
import org.apache.log4j.Logger; |
99 |
import org.gvsig.fmap.data.DataCollection;
|
|
100 |
import org.gvsig.fmap.data.DataException;
|
|
101 |
import org.gvsig.fmap.data.DataStore;
|
|
99 |
import org.gvsig.fmap.dal.DataStore;
|
|
100 |
import org.gvsig.fmap.dal.exception.DataException;
|
|
101 |
import org.gvsig.fmap.dal.feature.FeatureStore;
|
|
102 | 102 |
import org.gvsig.fmap.mapcontext.MapContext; |
103 | 103 |
import org.gvsig.fmap.mapcontext.layers.FLayer; |
104 | 104 |
import org.gvsig.fmap.mapcontext.layers.FLayers; |
... | ... | |
180 | 180 |
PluginServices.getMDIManager().addWindow(dlg); |
181 | 181 |
((ProjectDocument)vista.getModel()).setModified(true); |
182 | 182 |
} else if (actionCommand.equals("INVERT_SELECTION")) { |
183 |
for (int i = 0; i < mapa.getLayers().getActives().length; i++) { |
|
184 |
FLayer lyr = mapa.getLayers().getActives()[i]; |
|
183 |
FLayer[] actives = mapa.getLayers().getActives(); |
|
184 |
for (int i = 0; i < actives.length; i++) { |
|
185 |
FLayer lyr = actives[i]; |
|
185 | 186 |
if (lyr.isAvailable() && lyr instanceof SingleLayer) { |
186 | 187 |
SingleLayer lyrSingle = (SingleLayer) lyr; |
187 |
DataStore fs; |
|
188 |
try { |
|
189 |
fs = lyrSingle.getDataStore(); |
|
190 |
DataCollection fCollectionAll = fs.getDataCollection(); |
|
191 |
DataCollection fCollection = fs.getSelection(); |
|
192 |
DataCollection fCollectionNew = fs.createSelection(); |
|
193 |
fCollectionNew.addAll(fCollectionAll); |
|
194 |
fCollectionNew.removeAll(fCollection); |
|
195 |
fs.setSelection(fCollectionNew); |
|
196 |
} catch (DataException e) { |
|
197 |
e.printStackTrace(); |
|
198 |
NotificationManager.addError(e); |
|
188 |
DataStore ds = lyrSingle.getDataStore(); |
|
189 |
if (ds instanceof FeatureStore) { |
|
190 |
try { |
|
191 |
((FeatureStore) ds).getFeatureSelection().reverse(); |
|
192 |
} catch (DataException e) { |
|
193 |
e.printStackTrace(); |
|
194 |
NotificationManager.addError(e); |
|
195 |
} |
|
196 |
} else { |
|
197 |
// TODO Not supported yet |
|
199 | 198 |
} |
200 | 199 |
|
200 |
|
|
201 | 201 |
} |
202 | 202 |
} |
203 | 203 |
((ProjectDocument)vista.getModel()).setModified(true); |
Also available in: Unified diff