Revision 6792

View differences:

org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster.tools/org.gvsig.raster.tools.app/org.gvsig.raster.tools.app.mainplugin/src/main/java/org/gvsig/raster/tools/app/mainplugin/ExportViewToImageExtension.java
2 2

  
3 3
import java.awt.Graphics2D;
4 4
import java.awt.image.BufferedImage;
5
import java.io.File;
6 5

  
7
import javax.swing.JOptionPane;
8

  
9 6
import org.apache.commons.lang3.StringUtils;
10 7
import org.slf4j.Logger;
11 8
import org.slf4j.LoggerFactory;
......
16 13
import org.gvsig.app.ApplicationManager;
17 14
import org.gvsig.app.project.documents.view.ViewDocument;
18 15
import org.gvsig.app.project.documents.view.gui.IView;
19
import org.gvsig.fmap.dal.DALLocator;
20
import org.gvsig.fmap.dal.exception.DataException;
21 16
import org.gvsig.fmap.dal.exception.ReadException;
22
import org.gvsig.fmap.dal.raster.api.NewRasterStoreParameters;
23
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemStoreParameters;
24 17
import org.gvsig.fmap.geom.primitive.Envelope;
25 18
import org.gvsig.fmap.mapcontext.MapContext;
26 19
import org.gvsig.fmap.mapcontext.MapContextException;
......
34 27
import org.gvsig.raster.swing.buffer.RasterSwingBufferLocator;
35 28
import org.gvsig.raster.swing.buffer.RasterSwingBufferManager;
36 29
import org.gvsig.raster.swing.buffer.save.SaveBufferDialog;
37
import org.gvsig.tools.ToolsLocator;
38
import org.gvsig.tools.i18n.I18nManager;
39 30
import org.gvsig.tools.locator.LocatorException;
40
import org.gvsig.tools.swing.api.ToolsSwingLocator;
41
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
42 31

  
43 32
/**
44 33
 *
......
87 76
            RasterSwingBufferManager rasterSwingBufferManager = RasterSwingBufferLocator.getSwingManager();
88 77
            SaveBufferDialog saveBufferDialog = rasterSwingBufferManager.createSaveBufferDialog(buffer);
89 78

  
90
            boolean exist = false;
79
            saveBufferDialog.showDialog(null);
91 80

  
92
            I18nManager i18nManager = ToolsLocator.getI18nManager();
93
            while (!exist) {
94

  
95
                if (saveBufferDialog.showSaveDialog(null) == SaveBufferDialog.APPROVE_OPTION) {
96

  
97
                    NewRasterStoreParameters params = saveBufferDialog.getParameters();
98
                    String providerName = saveBufferDialog.getProviderName();
99

  
100
                    File file = ((FilesystemStoreParameters) params).getFile();
101
                    ThreadSafeDialogsManager dlgManager = ToolsSwingLocator.getThreadSafeDialogsManager();
102
                    try {
103
                        if (file.exists()) {
104
                            String message = i18nManager.getTranslation("_File_exists_Overwrite_question");
105
                            String title = i18nManager.getTranslation("_export_raster");
106
                            int confirm =
107
                                dlgManager.confirmDialog(message, title, JOptionPane.YES_NO_OPTION,
108
                                    JOptionPane.QUESTION_MESSAGE);
109

  
110
                            if (confirm == JOptionPane.YES_OPTION) {
111
                                DALLocator.getDataManager().createFileStore(providerName, params, true);
112
                                exist = true;
113
                            }
114
                            continue;
115
                        } else {
116
                            DALLocator.getDataManager().createFileStore(providerName, params, true);
117
                            exist = true;
118
                        }
119
                    } catch (LocatorException | DataException e) {
120
                        logger.warn("Can't export buffer from view's image.", e);
121
                        String message = i18nManager.getTranslation("_error_exporting_buffer");
122
                        String title = i18nManager.getTranslation("_export_raster");
123
                        dlgManager.messageDialog(message, title, JOptionPane.WARNING_MESSAGE);
124
                        return;
125
                    }
126
                } else {
127
                    exist = true;
128
                }
129
            }
130 81
        }
131 82
    }
132 83

  
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.api/src/main/java/org/gvsig/raster/swing/buffer/save/SaveBufferDialog.java
24 24

  
25 25
import java.util.Iterator;
26 26

  
27
import org.gvsig.fmap.dal.NewDataStoreParameters;
28 27
import org.gvsig.fmap.dal.raster.api.NewRasterStoreParameters;
29 28
import org.gvsig.fmap.dal.serverexplorer.filesystem.spi.FilesystemServerExplorerProvider;
30 29
import org.gvsig.raster.lib.buffer.api.Buffer;
......
75 74
    public String getProviderName();
76 75

  
77 76
    /**
77
     * @param parent
78 78
     *
79 79
     */
80
    public int showSaveDialog(java.awt.Component parent);
80
    public void showDialog(java.awt.Component parent);
81 81

  
82 82
}
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
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
}
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/pom.xml
4 4
 <parent>
5 5
  <groupId>org.gvsig</groupId>
6 6
  <artifactId>org.gvsig.desktop</artifactId>
7
  <version>2.0.177</version>
7
  <version>2.0.178-SNAPSHOT</version>
8 8
 </parent>
9 9
 <artifactId>org.gvsig.raster</artifactId>
10 10
 <packaging>pom</packaging>

Also available in: Unified diff