Statistics
| Revision:

root / org.gvsig.proj / branches / refactor2018 / org.gvsig.proj / org.gvsig.proj.swing / org.gvsig.proj.swing.api / src / main / java / org / gvsig / proj / swing / CoordinateTransformationSelectorComponent.java @ 793

History | View | Annotate | Download (3.53 KB)

1
/* gvSIG. Desktop Geographic Information System.
2
*
3
* Copyright ? 2018 gvSIG Association
4
*
5
* This program is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU General Public License
7
* as published by the Free Software Foundation; either version 2
8
* of the License, or (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
* MA  02110-1301, USA.
19
*
20
* For any additional information, do not hesitate to contact us
21
* at info AT gvsig.com, or visit our website www.gvsig.com.
22
*/
23
package org.gvsig.proj.swing;
24

    
25
import org.gvsig.proj.CoordinateOperation;
26
import org.gvsig.proj.CoordinateReferenceSystem;
27
import org.gvsig.tools.swing.api.Component;
28

    
29
/**
30
* User interface component API to select a {@link CoordinateOperation} and
31
* optionally the source and target CoordinateReferenceSystems for the
32
* transformation (or converesion) of coordinates.
33
* 
34
* @author gvSIG Team
35
*/
36
public interface CoordinateTransformationSelectorComponent extends Component {
37

    
38
   /**
39
    * Returns the source {@link CoordinateReferenceSystem}.
40
    * 
41
    * @return the source {@link CoordinateReferenceSystem}
42
    */
43
   CoordinateReferenceSystem getSourceCoordinateReferenceSystem();
44

    
45
   /**
46
    * Returns the target {@link CoordinateReferenceSystem}.
47
    * 
48
    * @return the target {@link CoordinateReferenceSystem}
49
    */
50
   CoordinateReferenceSystem getTargetCoordinateReferenceSystem();
51

    
52
   /**
53
    * Returns the selected {@link CoordinateTransformation}.
54
    * 
55
    * @return the selected {@link CoordinateTransformation}
56
    */
57
   CoordinateOperation getCoordinateTransformation();
58

    
59
   /**
60
    * Sets the current {@link CoordinateTransformation}.
61
    * 
62
    * @param transformation
63
    *            the current {@link CoordinateTransformation}
64
    */
65
   void setCoordinateTransformation(CoordinateOperation transformation);
66

    
67
   /**
68
    * Sets the source {@link CoordinateReferenceSystem}.
69
    * 
70
    * @param crs
71
    *            the source {@link CoordinateReferenceSystem}
72
    */
73
   void setSourceCoordinateReferenceSystem(CoordinateReferenceSystem source);
74

    
75
   /**
76
    * Sets the target {@link CoordinateReferenceSystem}.
77
    * 
78
    * @param crs
79
    *            the target {@link CoordinateReferenceSystem}
80
    */
81
   void setTargetCoordinateReferenceSystem(CoordinateReferenceSystem target);
82
   
83
   /**
84
    * Defines whether the source coordinate reference system selector
85
    * should be visible in the panel 
86
    * @param show
87
    */
88
   void showSourceCoordinateReferenceSystemSelector(boolean visible);
89
   
90
   /**
91
    * Determines whether the source coordinate reference system selector
92
    * should be visible when the panel is visible 
93
    * @param show
94
    */
95
   boolean isSourceCoordinateReferenceSystemSelectorVisible();
96
   
97
   /**
98
    * Defines whether the target coordinate reference system selector
99
    * should be visible in the panel 
100
    * 
101
    * @param show
102
    */
103
   void showTargetCoordinateReferenceSystemSelector(boolean visible);
104
   
105
   /**
106
    * Determines whether the target coordinate reference system selector
107
    * should be visible when the panel is visible
108
    * 
109
    * @param show
110
    */
111
   boolean isTargetCoordinateReferenceSystemSelectorVisible();
112
}