Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.plugin / org.gvsig.daltransform.app / org.gvsig.daltransform.app.mainplugin / src / main / java / org / gvsig / daltransform / swing / DataTransformGui.java @ 40558

History | View | Annotate | Download (3.82 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
/* gvSIG. Geographic Information System of the Valencian Government
25
*
26
* Copyright (C) 2007-2008 Infrastructures and Transports Department
27
* of the Valencian Government (CIT)
28
* 
29
* This program is free software; you can redistribute it and/or
30
* modify it under the terms of the GNU General Public License
31
* as published by the Free Software Foundation; either version 2
32
* of the License, or (at your option) any later version.
33
* 
34
* This program is distributed in the hope that it will be useful,
35
* but WITHOUT ANY WARRANTY; without even the implied warranty of
36
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
37
* GNU General Public License for more details.
38
* 
39
* You should have received a copy of the GNU General Public License
40
* along with this program; if not, write to the Free Software
41
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
42
* MA  02110-1301, USA.
43
* 
44
*/
45

    
46
/*
47
* AUTHORS (In addition to CIT):
48
* 2009 {Iver T.I.}   {Task}
49
*/
50
 
51
package org.gvsig.daltransform.swing;
52

    
53
import java.awt.Dimension;
54
import java.util.List;
55

    
56
import org.gvsig.fmap.dal.exception.DataException;
57
import org.gvsig.fmap.dal.feature.FeatureStore;
58
import org.gvsig.fmap.dal.feature.FeatureStoreTransform;
59

    
60
/**
61
 * This interface is used to establish a relationship between 
62
 * feature transformations and their user interfaces. It creates 
63
 * the panels that are used to set the parameters that the 
64
 * transformation needs. 
65
 * 
66
 * @author <a href="mailto:jpiera@gvsig.org">Jorge Piera</a>
67
 */
68
public interface DataTransformGui {
69
    
70
        /**
71
         * Creates a feature transformation from a feature store. The
72
         * class that implements this interface can create a transformation
73
         * using this feature store and all the parameters that the user has
74
         * selected. All these parameters must be known by this class
75
         * @param featureStore
76
         * The selected feature store
77
         * @return
78
         * the transformation
79
         * @throws DataException
80
         */
81
        public FeatureStoreTransform createFeatureStoreTransform(FeatureStore featureStore) throws DataException;
82
        
83
        /**
84
         * Return if the transformation can be applied in a {@link FeatureStore}. 
85
         * @param featureStore
86
         *     the original feature store
87
         * @return
88
         *     <code>true</code> if the transformation can be applied.
89
         */
90
        public boolean accept(FeatureStore featureStore);
91
                
92
    /**
93
     * Creates a list of panels to set the parameters used on the transformation.
94
     * @return
95
     * a set of panels with the parameters of the transformation
96
     */
97
        public List<DataTransformWizardPanel> createPanels();
98

    
99
        /**
100
         * @return the name that is displayed in the feature transformation
101
         * list
102
         */
103
        public String getName();
104
        
105
        /**
106
         * @return a description of the feature transformation
107
         */
108
        public String getDescription();
109
        
110
        /**
111
         * Returns the minimum size that has to be the wizard to display
112
         * the forms.
113
         * @return
114
         * The minimum size for the panels. 
115
         */
116
        public Dimension getMinDimension();
117

    
118

    
119
}
120