svn-gvsig-desktop / branches / v2_0_0_prep / extensions / org.gvsig.geocoding.extension / src / org / gvsig / geocoding / gui / newpattern / SimpleRangePanel.java @ 32526
History | View | Annotate | Download (7.01 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 |
|
23 |
/*
|
24 |
* AUTHORS (In addition to CIT):
|
25 |
* 2008 Prodevelop S.L. main developer
|
26 |
*/
|
27 |
|
28 |
package org.gvsig.geocoding.gui.newpattern; |
29 |
|
30 |
import java.util.List; |
31 |
|
32 |
import javax.swing.DefaultComboBoxModel; |
33 |
import javax.swing.JComboBox; |
34 |
import javax.swing.JLabel; |
35 |
import javax.swing.JPanel; |
36 |
|
37 |
import org.gvsig.andami.PluginServices; |
38 |
import org.gvsig.geocoding.extension.GeocodingController; |
39 |
import org.gvsig.geocoding.utils.GeocodingUtils; |
40 |
|
41 |
/**
|
42 |
* Simple Range panel
|
43 |
*
|
44 |
* @author <a href="mailto:jsanz@prodevelop.es"> Jorge Gaspar Sanz Salinas</a>
|
45 |
* @author <a href="mailto:vsanjaime@prodevelop.es"> Vicente Sanjaime Calvet</a>
|
46 |
*/
|
47 |
public class SimpleRangePanel extends JPanel { |
48 |
|
49 |
private static final long serialVersionUID = 1L; |
50 |
|
51 |
private JComboBox jComboFromNum; |
52 |
private JComboBox jComboToNum; |
53 |
private JLabel jLabFromNum; |
54 |
private JLabel jLabToNum; |
55 |
|
56 |
/**
|
57 |
* Constructor
|
58 |
*/
|
59 |
public SimpleRangePanel(GeocodingController control, List<String> fields) { |
60 |
initComponents(); |
61 |
setMessages(); |
62 |
// Fill two combos with the fields of datasource
|
63 |
if (fields != null) { |
64 |
fillCombos(fields); |
65 |
} |
66 |
|
67 |
} |
68 |
|
69 |
/**
|
70 |
* Initialize panel components
|
71 |
*/
|
72 |
private void initComponents() { |
73 |
|
74 |
this.setBorder(javax.swing.BorderFactory
|
75 |
.createTitledBorder("Numeric range"));
|
76 |
java.awt.GridBagConstraints gridBagConstraints; |
77 |
|
78 |
jLabFromNum = new javax.swing.JLabel();
|
79 |
jComboFromNum = new javax.swing.JComboBox();
|
80 |
jLabToNum = new javax.swing.JLabel();
|
81 |
jComboToNum = new javax.swing.JComboBox();
|
82 |
|
83 |
setMinimumSize(new java.awt.Dimension(500, 50)); |
84 |
setPreferredSize(new java.awt.Dimension(500, 50)); |
85 |
setLayout(new java.awt.GridBagLayout());
|
86 |
|
87 |
jLabFromNum.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); |
88 |
jLabFromNum.setText("FromNumber");
|
89 |
jLabFromNum.setFocusable(false);
|
90 |
jLabFromNum.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT); |
91 |
jLabFromNum.setMinimumSize(new java.awt.Dimension(70, 14)); |
92 |
jLabFromNum.setPreferredSize(new java.awt.Dimension(70, 14)); |
93 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
94 |
gridBagConstraints.gridx = 0;
|
95 |
gridBagConstraints.gridy = 0;
|
96 |
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; |
97 |
gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 0); |
98 |
add(jLabFromNum, gridBagConstraints); |
99 |
|
100 |
jComboFromNum.setModel(new javax.swing.DefaultComboBoxModel(
|
101 |
new String[] { "" })); |
102 |
jComboFromNum.setMinimumSize(new java.awt.Dimension(150, 20)); |
103 |
jComboFromNum.setOpaque(false);
|
104 |
jComboFromNum.setPreferredSize(new java.awt.Dimension(150, 20)); |
105 |
jComboFromNum.addActionListener(new java.awt.event.ActionListener() {
|
106 |
public void actionPerformed(java.awt.event.ActionEvent evt) { |
107 |
evFromNum(evt); |
108 |
} |
109 |
}); |
110 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
111 |
gridBagConstraints.gridx = 1;
|
112 |
gridBagConstraints.gridy = 0;
|
113 |
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; |
114 |
gridBagConstraints.weightx = 1.0;
|
115 |
gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 15); |
116 |
add(jComboFromNum, gridBagConstraints); |
117 |
|
118 |
jLabToNum.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); |
119 |
jLabToNum.setText("ToNumber");
|
120 |
jLabToNum.setFocusable(false);
|
121 |
jLabToNum.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT); |
122 |
jLabToNum.setMinimumSize(new java.awt.Dimension(70, 14)); |
123 |
jLabToNum.setPreferredSize(new java.awt.Dimension(70, 14)); |
124 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
125 |
gridBagConstraints.gridx = 2;
|
126 |
gridBagConstraints.gridy = 0;
|
127 |
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; |
128 |
add(jLabToNum, gridBagConstraints); |
129 |
|
130 |
jComboToNum.setModel(new javax.swing.DefaultComboBoxModel(
|
131 |
new String[] { "" })); |
132 |
jComboToNum.setMinimumSize(new java.awt.Dimension(150, 20)); |
133 |
jComboToNum.setPreferredSize(new java.awt.Dimension(150, 20)); |
134 |
jComboToNum.addActionListener(new java.awt.event.ActionListener() {
|
135 |
public void actionPerformed(java.awt.event.ActionEvent evt) { |
136 |
evToNum(evt); |
137 |
} |
138 |
}); |
139 |
gridBagConstraints = new java.awt.GridBagConstraints();
|
140 |
gridBagConstraints.gridx = 3;
|
141 |
gridBagConstraints.gridy = 0;
|
142 |
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; |
143 |
gridBagConstraints.weightx = 1.0;
|
144 |
gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); |
145 |
add(jComboToNum, gridBagConstraints); |
146 |
} |
147 |
|
148 |
/**
|
149 |
* Change value of FromNum
|
150 |
*
|
151 |
* @param evt
|
152 |
*/
|
153 |
private void evFromNum(java.awt.event.ActionEvent evt) { |
154 |
// TODO nothing to do
|
155 |
} |
156 |
|
157 |
/**
|
158 |
* Change Value of ToNum
|
159 |
*
|
160 |
* @param evt
|
161 |
*/
|
162 |
private void evToNum(java.awt.event.ActionEvent evt) { |
163 |
// nothing to do
|
164 |
} |
165 |
|
166 |
/**
|
167 |
* Fill panel combos
|
168 |
*
|
169 |
* @param fields
|
170 |
*/
|
171 |
private void fillCombos(List<String> fields) { |
172 |
if (fields != null) { |
173 |
DefaultComboBoxModel model = new DefaultComboBoxModel(); |
174 |
for (String field : fields) { |
175 |
model.addElement(field); |
176 |
} |
177 |
jComboFromNum.setModel(model); |
178 |
DefaultComboBoxModel model2 = new DefaultComboBoxModel(); |
179 |
for (String field2 : fields) { |
180 |
model2.addElement(field2); |
181 |
} |
182 |
jComboToNum.setModel(model2); |
183 |
} |
184 |
} |
185 |
|
186 |
/**
|
187 |
* Get description FromMun Combo
|
188 |
*
|
189 |
* @return
|
190 |
*/
|
191 |
public String getDescriptorFromNum() { |
192 |
String cDesc = (String) jComboFromNum.getSelectedItem(); |
193 |
if (cDesc != null) { |
194 |
return cDesc;
|
195 |
} |
196 |
return null; |
197 |
} |
198 |
|
199 |
/**
|
200 |
* Get description ToMun Combo
|
201 |
*
|
202 |
* @return
|
203 |
*/
|
204 |
public String getDescriptorToNum() { |
205 |
|
206 |
String cDesc = (String) jComboToNum.getSelectedItem(); |
207 |
if (cDesc != null) { |
208 |
return cDesc;
|
209 |
} |
210 |
return null; |
211 |
} |
212 |
|
213 |
/**
|
214 |
* set description FromMun Combo
|
215 |
*
|
216 |
* @param desc
|
217 |
*/
|
218 |
public void setDescriptorFromNum(String desc) { |
219 |
jComboFromNum.getModel().setSelectedItem(desc); |
220 |
} |
221 |
|
222 |
/**
|
223 |
* Get description ToMun Combo
|
224 |
*
|
225 |
* @return
|
226 |
*/
|
227 |
public void setDescriptorToNum(String desc) { |
228 |
jComboToNum.getModel().setSelectedItem(desc); |
229 |
} |
230 |
|
231 |
/**
|
232 |
*
|
233 |
* @param desc
|
234 |
*/
|
235 |
public void setComboValues(List<String> desc) { |
236 |
fillCombos(desc); |
237 |
this.validate();
|
238 |
} |
239 |
|
240 |
/**
|
241 |
* This method updates all labels of the panel from properties file
|
242 |
*/
|
243 |
private void setMessages() { |
244 |
|
245 |
PluginServices ps = PluginServices.getPluginServices(this);
|
246 |
|
247 |
this.setBorder(GeocodingUtils.getTitledBorder(ps.getText("rangenum"))); |
248 |
|
249 |
jLabFromNum.setText(ps.getText("fromnum"));
|
250 |
jLabToNum.setText(ps.getText("tonum"));
|
251 |
|
252 |
} |
253 |
|
254 |
} |