Revision 6792 org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.swing/org.gvsig.raster.swing.buffer/org.gvsig.raster.swing.buffer.impl/src/main/java/org/gvsig/raster/swing/buffer/impl/save/DefaultSaveBufferDialog.java

View differences:

DefaultSaveBufferDialog.java
30 30

  
31 31
import javax.swing.JComponent;
32 32
import javax.swing.JFileChooser;
33
import javax.swing.JOptionPane;
33 34
import javax.swing.JPanel;
34 35
import javax.swing.SwingUtilities;
35 36

  
......
41 42
import org.gvsig.fmap.dal.DataManager;
42 43
import org.gvsig.fmap.dal.DataServerExplorer;
43 44
import org.gvsig.fmap.dal.DataServerExplorerParameters;
44
import org.gvsig.fmap.dal.NewDataStoreParameters;
45 45
import org.gvsig.fmap.dal.exception.DataException;
46 46
import org.gvsig.fmap.dal.exception.InitializeException;
47 47
import org.gvsig.fmap.dal.exception.ProviderNotRegisteredException;
......
58 58
import org.gvsig.fmap.dal.spi.DataManagerProviderServices;
59 59
import org.gvsig.raster.lib.buffer.api.Buffer;
60 60
import org.gvsig.raster.lib.buffer.api.BufferLocator;
61
import org.gvsig.raster.swing.buffer.RasterSwingBufferLocator;
62
import org.gvsig.raster.swing.buffer.RasterSwingBufferManager;
63 61
import org.gvsig.raster.swing.buffer.save.SaveBufferDialog;
62
import org.gvsig.tools.ToolsLocator;
64 63
import org.gvsig.tools.dataTypes.DataTypes;
65 64
import org.gvsig.tools.dynform.DynFormDefinition;
66 65
import org.gvsig.tools.dynform.DynFormFieldDefinition;
67 66
import org.gvsig.tools.dynform.JDynForm;
67
import org.gvsig.tools.i18n.I18nManager;
68 68
import org.gvsig.tools.locator.LocatorException;
69
import org.gvsig.tools.swing.api.ToolsSwingLocator;
70
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
69 71

  
70 72
/**
71 73
 * @author fdiaz
......
219 221
     * @return
220 222
     */
221 223
    private NewRasterStoreParameters getParams(String dataStoreProviderName) {
222
        //FIXME: ?Movible al dataManager?
223 224

  
224

  
225 225
        DataManagerProviderServices dataManager = null;
226 226
        try {
227 227
            dataManager = DALSPILocator.getDataManagerProviderServices();
......
327 327
    }
328 328

  
329 329
    @Override
330
    public int showSaveDialog(java.awt.Component parent) {
330
    public void showDialog(java.awt.Component parent) {
331 331
        initializeComponents();
332
        return super.showSaveDialog(parent);
332

  
333
        boolean exit = false;
334

  
335
        I18nManager i18nManager = ToolsLocator.getI18nManager();
336
        while (!exit) {
337

  
338
            if (super.showSaveDialog(parent) == SaveBufferDialog.APPROVE_OPTION) {
339

  
340
                NewRasterStoreParameters params = getParameters();
341
                String providerName = getProviderName();
342

  
343
                File file = ((FilesystemStoreParameters) params).getFile();
344
                ThreadSafeDialogsManager dlgManager = ToolsSwingLocator.getThreadSafeDialogsManager();
345
                try {
346
                    if (file.exists()) {
347
                        String message = i18nManager.getTranslation("_File_exists_Overwrite_question");
348
                        String title = i18nManager.getTranslation("_export_raster");
349
                        int confirm =
350
                            dlgManager.confirmDialog(message, title, JOptionPane.YES_NO_OPTION,
351
                                JOptionPane.QUESTION_MESSAGE);
352

  
353
                        if (confirm == JOptionPane.YES_OPTION) {
354
                            DALLocator.getDataManager().createFileStore(providerName, params, true);
355
                            exit = true;
356
                        }
357
                        continue;
358
                    } else {
359
                        DALLocator.getDataManager().createFileStore(providerName, params, true);
360
                        exit = true;
361
                    }
362
                } catch (LocatorException | DataException e) {
363
                    logger.warn("Can't export buffer from view's image.", e);
364
                    String message = i18nManager.getTranslation("_error_exporting_buffer");
365
                    String title = i18nManager.getTranslation("_export_raster");
366
                    dlgManager.messageDialog(message, title, JOptionPane.WARNING_MESSAGE);
367
                    return;
368
                }
369
            } else {
370
                exit = true;
371
            }
372
        }
333 373
    }
334 374
}

Also available in: Unified diff