Revision 43321 trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/java/org/gvsig/fmap/dal/serverexplorer/filesystem/swing/FilesystemExplorerWizardTableModel.java
FilesystemExplorerWizardTableModel.java | ||
---|---|---|
95 | 95 |
} |
96 | 96 |
|
97 | 97 |
public boolean isCellEditable(int row, int col) { |
98 |
if (col == COLUMN_TILED && isTiledSupported(row) ) {
|
|
98 |
if (col == COLUMN_TILED && isEditableTiled(row) ) {
|
|
99 | 99 |
return true; |
100 | 100 |
} |
101 | 101 |
return false; |
... | ... | |
120 | 120 |
if (!(value instanceof Boolean)) { |
121 | 121 |
throw new IllegalArgumentException("The object '" + value.toString() + "' must be a Boolean."); |
122 | 122 |
} |
123 |
filesystemStoreParametersToLoad.setTiled((Boolean) value);
|
|
123 |
filesystemStoreParametersToLoad.setTiled((boolean) value);
|
|
124 | 124 |
break; |
125 | 125 |
|
126 | 126 |
default: |
... | ... | |
136 | 136 |
* @param projection |
137 | 137 |
* @param tiled |
138 | 138 |
*/ |
139 |
public void add(FilesystemStoreParameters fileParams, Boolean tiled){
|
|
139 |
public void add(FilesystemStoreParameters fileParams){ |
|
140 | 140 |
DataManager dataManager = DALLocator.getDataManager(); |
141 | 141 |
DataStoreProviderFactory factory = dataManager.getStoreProviderFactory( ((DataStoreParameters)fileParams).getDataStoreName()); |
142 |
if( factory != null && factory.isTiledSupported()==DataStoreProviderFactory.NO ) { |
|
143 |
tiled = null; |
|
144 |
} |
|
145 |
FilesystemStoreParametersToLoad filesystemStoreParametersToLoad = new FilesystemStoreParametersToLoad(fileParams, tiled) ; |
|
142 |
boolean editable = false; |
|
143 |
boolean tiled = false; |
|
144 |
if( factory != null ) { |
|
145 |
if( factory.getClass().getSimpleName().equalsIgnoreCase("TileProviderFactory")){ |
|
146 |
editable = false; |
|
147 |
tiled = true; |
|
148 |
} else { |
|
149 |
switch (factory.isTiledSupported()) { |
|
150 |
case DataStoreProviderFactory.NO: |
|
151 |
editable = false; |
|
152 |
tiled = false; |
|
153 |
break; |
|
154 |
case DataStoreProviderFactory.YES: |
|
155 |
editable = true; |
|
156 |
tiled = (factory.worksBestTiled()==DataStoreProviderFactory.YES); |
|
157 |
break; |
|
158 |
case DataStoreProviderFactory.UNKNOWN: |
|
159 |
//De momento, si no sabemos si se puede tilear lo marcamos como no |
|
160 |
editable = false; |
|
161 |
tiled = false; |
|
162 |
break; |
|
163 |
default: |
|
164 |
break; |
|
165 |
} |
|
166 |
} |
|
167 |
} |
|
168 |
FilesystemStoreParametersToLoad filesystemStoreParametersToLoad = new FilesystemStoreParametersToLoad(fileParams, tiled, editable) ; |
|
146 | 169 |
data.add(filesystemStoreParametersToLoad); |
147 | 170 |
} |
148 | 171 |
|
... | ... | |
150 | 173 |
* @param listFileParams |
151 | 174 |
* @param tiled |
152 | 175 |
*/ |
153 |
public void add(List<FilesystemStoreParameters> listFileParams, Boolean tiled){
|
|
176 |
public void add(List<FilesystemStoreParameters> listFileParams){ |
|
154 | 177 |
for (FilesystemStoreParameters filesystemStoreParameters : listFileParams) { |
155 |
this.add(filesystemStoreParameters, tiled);
|
|
178 |
this.add(filesystemStoreParameters); |
|
156 | 179 |
} |
157 | 180 |
} |
158 | 181 |
|
... | ... | |
179 | 202 |
return this.data.get(row).isTiled(); |
180 | 203 |
} |
181 | 204 |
|
182 |
public boolean isTiledSupported(int row){ |
|
183 |
return this.data.get(row).isTiledSupported(); |
|
205 |
/** |
|
206 |
* @param row |
|
207 |
* @return |
|
208 |
*/ |
|
209 |
public boolean isEditableTiled(int row){ |
|
210 |
return this.data.get(row).isEditable(); |
|
184 | 211 |
} |
185 | 212 |
/** |
186 | 213 |
* @param row |
... | ... | |
235 | 262 |
public static class FilesystemStoreParametersToLoad{ |
236 | 263 |
private FilesystemStoreParameters params; |
237 | 264 |
private boolean tiled; |
238 |
private boolean tiledSupported = false;
|
|
265 |
private boolean editable = false;
|
|
239 | 266 |
|
240 | 267 |
/** |
241 | 268 |
* @param params |
... | ... | |
247 | 274 |
/** |
248 | 275 |
* @param params |
249 | 276 |
* @param tiled |
277 |
* @param editable |
|
250 | 278 |
*/ |
251 |
public FilesystemStoreParametersToLoad(FilesystemStoreParameters params, Boolean tiled) {
|
|
279 |
public FilesystemStoreParametersToLoad(FilesystemStoreParameters params, boolean tiled, boolean editable) {
|
|
252 | 280 |
this.setParameters(params); |
253 | 281 |
this.setTiled(tiled); |
282 |
this.editable = editable; |
|
254 | 283 |
} |
255 | 284 |
|
256 | 285 |
FilesystemStoreParameters getParameters(){ |
... | ... | |
271 | 300 |
return tiled; |
272 | 301 |
} |
273 | 302 |
|
274 |
|
|
275 |
public boolean isTiledSupported() { |
|
276 |
return this.tiledSupported; |
|
277 |
} |
|
278 |
|
|
279 | 303 |
/** |
280 | 304 |
* @param tiled the tiled to set |
281 | 305 |
*/ |
282 |
public void setTiled(Boolean tiled) { |
|
283 |
if( tiled == null ) { |
|
284 |
this.tiled = false; |
|
285 |
this.tiledSupported = false; |
|
286 |
} else { |
|
306 |
public void setTiled(boolean tiled) { |
|
287 | 307 |
this.tiled = tiled; |
288 |
this.tiledSupported = true; |
|
289 |
} |
|
290 | 308 |
} |
309 |
|
|
310 |
public boolean isEditable() { |
|
311 |
return this.editable; |
|
312 |
} |
|
291 | 313 |
} |
292 | 314 |
|
293 | 315 |
} |
Also available in: Unified diff