Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / 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 / AbstractExporttoFileProvider.java @ 42676

History | View | Annotate | Download (3.18 KB)

1
/**
2
 * gvSIG. Desktop Geographic Information System.
3
 *
4
 * Copyright (C) 2007-2013 gvSIG Association.
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 3
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
 * For any additional information, do not hesitate to contact us
22
 * at info AT gvsig.com, or visit our website www.gvsig.com.
23
 */
24
package org.gvsig.exportto.swing.prov.file;
25

    
26
import org.cresques.cts.IProjection;
27

    
28
import org.gvsig.exportto.swing.prov.file.panel.SelectFileOptionPanel;
29
import org.gvsig.exportto.swing.spi.ExporttoSwingProvider;
30
import org.gvsig.exportto.swing.spi.ExporttoSwingProviderPanel;
31
import org.gvsig.fmap.dal.feature.FeatureStore;
32
import org.gvsig.tools.service.spi.AbstractProvider;
33
import org.gvsig.tools.service.spi.ProviderServices;
34

    
35
/**
36
 * Exporto provider which gets Exporto from a file.
37
 *
38
 * @author gvSIG Team
39
 * @version $Id$
40
 */
41
public abstract class AbstractExporttoFileProvider extends AbstractProvider
42
    implements ExporttoSwingProvider {
43

    
44
    protected SelectFileOptionPanel selectFileOptionPanel = null;
45

    
46
    protected FeatureStore featureStore;
47
    protected IProjection projection;
48

    
49
    /**
50
     * Constructor.
51
     *
52
     * @param providerServices
53
     *            the services for the provider
54
     * @param file
55
     *            to get the Exporto from
56
     */
57
    public AbstractExporttoFileProvider(ProviderServices providerServices,
58
        FeatureStore featureStore, IProjection projection) {
59
        this(providerServices, featureStore, projection,
60
            new SelectFileOptionPanel());
61
    }
62

    
63
    public AbstractExporttoFileProvider(ProviderServices providerServices,
64
        FeatureStore featureStore, IProjection projection,
65
        SelectFileOptionPanel selectFileOptionPanel) {
66
        super(providerServices);
67
        this.featureStore = featureStore;
68
        this.projection = projection;
69

    
70
        this.selectFileOptionPanel = selectFileOptionPanel;
71
    }
72

    
73
    public int getPanelCount() {
74
        return 1;
75
    }
76

    
77
    public ExporttoSwingProviderPanel getPanelAt(int index) {
78
        switch (index) {
79
        case 0:
80
            return selectFileOptionPanel;
81
        }
82
        return null;
83
    }
84

    
85
    /**
86
     * Sets the target projection to which should be exported
87
     * @param targetProjection
88
     */
89
    public void setTargetProjection(IProjection targetProjection){
90
        this.projection=targetProjection;
91
    }
92

    
93
    /**
94
     * Informs if it needs to ask for a target projection,
95
     * or if it is not needed or provided through its own wizard panel.
96
     * @return
97
     */
98
    public boolean needsPanelTargetProjection(){
99
        return true;
100
    }
101
}