Statistics
| Revision:

svn-gvsig-desktop / branches / v2_0_0_prep / libraries / org.gvsig.exportto / org.gvsig.exportto.swing / org.gvsig.exportto.swing.prov / org.gvsig.exportto.swing.prov.file / src / main / java / org / gvsig / exportto / swing / prov / file / panel / SelectFileOptionPanel.java @ 35745

History | View | Annotate | Download (3.64 KB)

1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 */
22
package org.gvsig.exportto.swing.prov.file.panel;
23

    
24
import java.awt.BorderLayout;
25
import java.awt.Component;
26
import java.io.File;
27

    
28
import javax.swing.JOptionPane;
29
import javax.swing.JPanel;
30

    
31
import org.gvsig.exportto.swing.ExporttoSwingLocator;
32
import org.gvsig.exportto.swing.ExporttoSwingManager;
33
import org.gvsig.exportto.swing.spi.ExporttoPanelValidationException;
34
import org.gvsig.exportto.swing.spi.ExporttoSwingProviderPanel;
35
import org.gvsig.i18n.Messages;
36

    
37
/**
38
 * @author gvSIG Team
39
 * @version $Id$
40
 *
41
 */
42
public class SelectFileOptionPanel extends ExporttoSwingProviderPanel{
43
    private static final long serialVersionUID = -7417782279157857962L;
44
    private JPanel optionsPanel;
45
    
46
    private static final ExporttoSwingManager EXPORTTO_SWING_MANAGER =
47
        ExporttoSwingLocator.getSwingManager();
48

    
49
    private org.gvsig.gui.beans.wizard.panel.SelectFileOptionPanel selectFileOptionPanel;
50
    
51
    /**
52
     * @param fileText
53
     */
54
    public SelectFileOptionPanel() {
55
        this(null);        
56
    }
57
    
58
    public SelectFileOptionPanel(JPanel optionsPanel) {
59
        super();
60
        this.setLayout(new BorderLayout());
61
        selectFileOptionPanel = new org.gvsig.gui.beans.wizard.panel.SelectFileOptionPanel(null);
62
        add(selectFileOptionPanel, BorderLayout.NORTH);
63
        if (optionsPanel != null){            
64
            optionsPanel.setBorder(
65
                javax.swing.BorderFactory.createCompoundBorder(javax.swing.BorderFactory.createTitledBorder(Messages.getText("options")),
66
                javax.swing.BorderFactory.createEmptyBorder(10, 5, 5, 5)));
67
            add(optionsPanel, BorderLayout.CENTER);
68
            this.optionsPanel = optionsPanel;
69
        }
70
    }
71

    
72
    @Override
73
    public String getPanelTitle() {    
74
        return EXPORTTO_SWING_MANAGER.getTranslation("Seleccionar_fichero");
75
    }
76
    
77
    public File getSelectedFile(){
78
        return selectFileOptionPanel.getSelectedFile();
79
    }
80

    
81
    @Override
82
    public boolean isValidPanel() throws ExporttoPanelValidationException {
83
        File file = selectFileOptionPanel.getSelectedFile();
84
        if ((file == null) || (file.equals(""))){
85
            throw new ExporttoPanelValidationException("The file can not be empty");
86
        }
87
        if( file.exists()){
88
            int resp = JOptionPane.showConfirmDialog((Component)selectFileOptionPanel, 
89
                EXPORTTO_SWING_MANAGER.getTranslation("fichero_ya_existe_seguro_desea_guardarlo"),
90
                EXPORTTO_SWING_MANAGER.getTranslation("guardar"), JOptionPane.YES_NO_OPTION);
91
            if (resp == JOptionPane.NO_OPTION) {
92
                return false;
93
            }
94
        }
95
        return true;
96
    }    
97
    
98
    /**
99
     * @return the optionsPanel
100
     */
101
    public JPanel getOptionsPanel() {
102
        return optionsPanel;
103
    }
104
}