22 |
22 |
|
23 |
23 |
package org.gvsig.raster.wms.app.wmsclient.gui.panel;
|
24 |
24 |
|
|
25 |
import java.awt.BorderLayout;
|
|
26 |
import java.awt.Color;
|
25 |
27 |
import java.awt.Component;
|
26 |
28 |
import java.awt.Dimension;
|
|
29 |
import java.awt.GridBagConstraints;
|
|
30 |
import java.awt.GridBagLayout;
|
|
31 |
import java.awt.Insets;
|
|
32 |
import java.awt.event.ActionEvent;
|
27 |
33 |
import java.awt.event.FocusAdapter;
|
28 |
34 |
import java.awt.event.FocusEvent;
|
29 |
35 |
import java.awt.event.FocusListener;
|
... | ... | |
34 |
40 |
import java.net.URISyntaxException;
|
35 |
41 |
import java.util.AbstractCollection;
|
36 |
42 |
import java.util.ArrayList;
|
|
43 |
import java.util.Collection;
|
37 |
44 |
import java.util.Hashtable;
|
38 |
45 |
import java.util.List;
|
|
46 |
import java.util.Objects;
|
39 |
47 |
import java.util.TreeSet;
|
40 |
48 |
import java.util.Vector;
|
41 |
49 |
import java.util.prefs.Preferences;
|
42 |
|
|
|
50 |
import javax.swing.AbstractListModel;
|
|
51 |
import javax.swing.DefaultListModel;
|
43 |
52 |
import javax.swing.JButton;
|
44 |
53 |
import javax.swing.JCheckBox;
|
45 |
54 |
import javax.swing.JList;
|
... | ... | |
49 |
58 |
import javax.swing.JTabbedPane;
|
50 |
59 |
import javax.swing.JTextField;
|
51 |
60 |
import javax.swing.tree.TreePath;
|
52 |
|
|
|
61 |
import org.apache.batik.ext.swing.GridBagConstants;
|
|
62 |
import org.apache.commons.lang3.StringUtils;
|
53 |
63 |
import org.gvsig.andami.IconThemeHelper;
|
54 |
64 |
import org.gvsig.andami.PluginServices;
|
55 |
65 |
import org.gvsig.andami.messages.NotificationManager;
|
... | ... | |
80 |
90 |
import org.gvsig.raster.wms.io.WMSServerExplorer;
|
81 |
91 |
import org.gvsig.raster.wms.io.WMSServerExplorerParameters;
|
82 |
92 |
import org.gvsig.raster.wms.io.time.RemoteTimeDimension;
|
|
93 |
import org.gvsig.tools.swing.api.FilteredListModel;
|
|
94 |
import org.gvsig.tools.swing.api.ToolsSwingLocator;
|
|
95 |
import org.gvsig.tools.swing.api.ToolsSwingUtils;
|
83 |
96 |
|
84 |
97 |
|
85 |
98 |
/**
|
... | ... | |
114 |
127 |
private JScrollPane jScrollPane1 = null;
|
115 |
128 |
private JScrollPane jScrollPane2 = null;
|
116 |
129 |
private JScrollPane jScrollPane3 = null;
|
117 |
|
private JScrollPane jScrollPane5 = null;
|
|
130 |
private JScrollPane selectedLayersJScrollPaneJScrollPane = null;
|
118 |
131 |
private JButton btnAdd = null;
|
119 |
132 |
private JButton btnDel = null;
|
120 |
133 |
private JScrollPane jScrollPane6 = null;
|
121 |
|
private JPanel jPanel2 = null;
|
|
134 |
private JPanel layersJPanel = null;
|
122 |
135 |
private JPanel tabFormats = null;
|
123 |
136 |
private JPanel jPanel4 = null;
|
124 |
137 |
private JTextField jTxtNomCapa = null;
|
... | ... | |
165 |
178 |
public WMSParamsPanel(WMSServerExplorer data) {
|
166 |
179 |
super();
|
167 |
180 |
setWizardData(data);
|
168 |
|
this.setLayout(null);
|
169 |
|
this.setVisible(false);
|
170 |
|
this.setBounds(0, 0, 510, 427);
|
171 |
|
if (jTabbedPane == null) {
|
172 |
|
jTabbedPane = new JTabbedPane();
|
173 |
|
jTabbedPane.setBounds(4, 4, 502, 415);
|
174 |
|
StylesPanel sp = getTabStyle();
|
175 |
|
DimensionPanel dp = getTabDimensions();
|
|
181 |
initialize();
|
176 |
182 |
|
177 |
|
jTabbedPane.addTab(PluginServices.getText(this, "capas"), null,
|
178 |
|
getTabLayers(), null);
|
179 |
|
jTabbedPane.addTab(PluginServices.getText(this, "estilos"), null,
|
180 |
|
sp, null);
|
181 |
|
stylesTabIndex = jTabbedPane.getTabCount() - 1;
|
182 |
|
jTabbedPane.addTab(PluginServices.getText(this, "dimensiones"),
|
183 |
|
null, dp, null);
|
184 |
|
dimensionTabIndex = jTabbedPane.getTabCount() - 1;
|
185 |
|
jTabbedPane.addTab(PluginServices.getText(this, "formatos"), null,
|
186 |
|
getTabFormats(), null);
|
187 |
|
jTabbedPane.setEnabledAt(dimensionTabIndex, false);
|
188 |
|
jTabbedPane.setEnabledAt(stylesTabIndex, false);
|
189 |
|
}
|
190 |
|
this.add(jTabbedPane, null);
|
191 |
|
|
192 |
183 |
setListenerSupport(new WizardListenerSupport());
|
193 |
184 |
}
|
194 |
185 |
|
... | ... | |
198 |
189 |
* @return Panel
|
199 |
190 |
*/
|
200 |
191 |
private void initialize() {
|
201 |
|
this.setLayout(null);
|
|
192 |
this.setLayout(new BorderLayout());
|
202 |
193 |
this.setVisible(false);
|
203 |
|
this.setBounds(0, 0, 510, 427);
|
204 |
|
this.add(getJTabbedPane(), null);
|
|
194 |
this.add(getJTabbedPane(), BorderLayout.CENTER);
|
|
195 |
ToolsSwingUtils.ensureRowsCols(this, 20, 100, 40, 200);
|
205 |
196 |
}
|
206 |
197 |
|
207 |
198 |
public boolean isUpdatingCache() {
|
... | ... | |
217 |
208 |
*
|
218 |
209 |
* @return Panel
|
219 |
210 |
*/
|
220 |
|
private JPanel getJPanel2() {
|
221 |
|
if (jPanel2 == null) {
|
222 |
|
jPanel2 = new JPanel();
|
223 |
|
jPanel2.setLayout(null);
|
224 |
|
jPanel2.setBounds(5, 59, 485, 328);
|
225 |
|
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
|
211 |
private JPanel getLayersJPanel() {
|
|
212 |
if (layersJPanel == null) {
|
|
213 |
layersJPanel = new JPanel();
|
|
214 |
layersJPanel.setLayout(new GridBagLayout());
|
|
215 |
layersJPanel.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
226 |
216 |
null, PluginServices.getText(this, "select_layers"),
|
227 |
217 |
javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
|
228 |
218 |
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,
|
229 |
219 |
null));
|
230 |
|
jPanel2.add(getChkExtendedNames(), null);
|
231 |
220 |
|
232 |
|
jPanel2.add(getJScrollPane1(), null);
|
233 |
|
jPanel2.add(getBtnDel(), null);
|
234 |
|
jPanel2.add(getBtnAdd(), null);
|
235 |
|
jPanel2.add(getJScrollPane5(), null);
|
236 |
|
jPanel2.add(getBtnUp(), null);
|
237 |
|
jPanel2.add(getBtnDown(), null);
|
238 |
|
jPanel2.add(getChkDisagregate(), null);
|
|
221 |
GridBagConstraints c = new GridBagConstraints();
|
|
222 |
c.gridx = 0;
|
|
223 |
c.gridy = 0;
|
|
224 |
c.insets = new Insets(2, 2, 2, 2);
|
|
225 |
c.fill = GridBagConstants.BOTH;
|
|
226 |
c.gridwidth = 2;
|
|
227 |
c.weightx = 1;
|
|
228 |
c.weighty = 1;
|
|
229 |
layersJPanel.add(getTreeLayersJScrollPane(), c);
|
|
230 |
|
|
231 |
c.gridx = 0;
|
|
232 |
c.gridy = 1;
|
|
233 |
c.fill = GridBagConstants.BOTH;
|
|
234 |
c.gridwidth = 1;
|
|
235 |
c.gridheight = 4;
|
|
236 |
c.weightx = 1;
|
|
237 |
c.weighty = 1;
|
|
238 |
layersJPanel.add(getSelectedLayersJScrollPane(), c);
|
|
239 |
|
|
240 |
c.gridx = 1;
|
|
241 |
c.gridy = 1;
|
|
242 |
c.fill = GridBagConstants.NONE;
|
|
243 |
c.anchor = GridBagConstants.SOUTH;
|
|
244 |
c.gridwidth = 1;
|
|
245 |
c.gridheight = 1;
|
|
246 |
c.weightx = 0;
|
|
247 |
c.weighty = 0;
|
|
248 |
layersJPanel.add(getBtnAdd(), c);
|
|
249 |
|
|
250 |
c.gridx = 1;
|
|
251 |
c.gridy = 2;
|
|
252 |
c.fill = GridBagConstants.NONE;
|
|
253 |
c.anchor = GridBagConstants.NORTH;
|
|
254 |
c.gridwidth = 1;
|
|
255 |
c.gridheight = 1;
|
|
256 |
c.weightx = 0;
|
|
257 |
c.weighty = 0;
|
|
258 |
layersJPanel.add(getBtnDel(), c);
|
|
259 |
|
|
260 |
c.gridx = 1;
|
|
261 |
c.gridy = 3;
|
|
262 |
c.fill = GridBagConstants.NONE;
|
|
263 |
c.anchor = GridBagConstants.SOUTH;
|
|
264 |
c.gridwidth = 1;
|
|
265 |
c.gridheight = 1;
|
|
266 |
c.weightx = 0;
|
|
267 |
c.weighty = 0;
|
|
268 |
layersJPanel.add(getBtnUp(), c);
|
|
269 |
|
|
270 |
c.gridx = 1;
|
|
271 |
c.gridy = 4;
|
|
272 |
c.fill = GridBagConstants.NONE;
|
|
273 |
c.anchor = GridBagConstants.NORTH;
|
|
274 |
c.gridwidth = 1;
|
|
275 |
c.gridheight = 1;
|
|
276 |
c.weightx = 0;
|
|
277 |
c.weighty = 0;
|
|
278 |
layersJPanel.add(getBtnDown(), c);
|
|
279 |
|
|
280 |
c.gridx = 0;
|
|
281 |
c.gridy = 5;
|
|
282 |
c.fill = GridBagConstants.BOTH;
|
|
283 |
c.anchor = GridBagConstants.WEST;
|
|
284 |
c.gridwidth = 2;
|
|
285 |
c.gridheight = 1;
|
|
286 |
c.weightx = 0;
|
|
287 |
c.weighty = 0;
|
|
288 |
layersJPanel.add(getChkDisagregate(), c);
|
|
289 |
|
|
290 |
c.gridx = 0;
|
|
291 |
c.gridy = 6;
|
|
292 |
c.fill = GridBagConstants.BOTH;
|
|
293 |
c.gridwidth = 2;
|
|
294 |
c.gridheight = 1;
|
|
295 |
c.weightx = 1;
|
|
296 |
c.weighty = 0;
|
|
297 |
layersJPanel.add(getChkExtendedNames(), c);
|
239 |
298 |
}
|
240 |
299 |
|
241 |
|
return jPanel2;
|
|
300 |
return layersJPanel;
|
242 |
301 |
}
|
243 |
302 |
|
244 |
303 |
/**
|
... | ... | |
246 |
305 |
*
|
247 |
306 |
* @return Panel
|
248 |
307 |
*/
|
249 |
|
private JPanel getJPanel4() {
|
|
308 |
private JPanel getJPanelLayerName() {
|
250 |
309 |
if (jPanel4 == null) {
|
251 |
310 |
jPanel4 = new JPanel();
|
252 |
|
jPanel4.setLayout(null);
|
|
311 |
jPanel4.setLayout(new BorderLayout());
|
253 |
312 |
jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
254 |
313 |
null, PluginServices.getText(this, "layer_name"),
|
255 |
314 |
javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
|
256 |
315 |
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,
|
257 |
316 |
null));
|
258 |
|
jPanel4.setBounds(5, 8, 485, 49);
|
259 |
|
jPanel4.add(getJTxtNomCapa(), null);
|
|
317 |
jPanel4.add(getJTxtNomCapa(), BorderLayout.CENTER);
|
260 |
318 |
}
|
261 |
319 |
|
262 |
320 |
return jPanel4;
|
... | ... | |
270 |
328 |
private JPanel getTabFormats() {
|
271 |
329 |
if (tabFormats == null) {
|
272 |
330 |
tabFormats = new JPanel();
|
273 |
|
tabFormats.setLayout(null);
|
274 |
|
tabFormats.add(getJPanelFormats(), null);
|
275 |
|
tabFormats.add(getJPanelSrsSelection(), null);
|
276 |
|
tabFormats.add(getJPanelInfoByPointFormat(), null);
|
|
331 |
BorderLayout bl = new BorderLayout();
|
|
332 |
tabFormats.setLayout(bl);
|
|
333 |
tabFormats.add(getJPanelFormats(), BorderLayout.NORTH);
|
|
334 |
tabFormats.add(getJPanelSrsSelection(), BorderLayout.CENTER);
|
|
335 |
tabFormats.add(getJPanelInfoByPointFormat(), BorderLayout.SOUTH);
|
277 |
336 |
}
|
278 |
337 |
|
279 |
338 |
return tabFormats;
|
... | ... | |
284 |
343 |
*
|
285 |
344 |
* @return ScrollPane
|
286 |
345 |
*/
|
287 |
|
private JScrollPane getJScrollPane1() {
|
|
346 |
private JScrollPane getTreeLayersJScrollPane() {
|
288 |
347 |
if (jScrollPane1 == null) {
|
289 |
348 |
jScrollPane1 = new JScrollPane();
|
290 |
|
jScrollPane1.setBounds(11, 22, 460, 123);
|
291 |
349 |
jScrollPane1.setViewportView(getTreeLayers());
|
292 |
350 |
jScrollPane1.setPreferredSize(new java.awt.Dimension(205, 75));
|
293 |
351 |
}
|
... | ... | |
303 |
361 |
private JButton getBtnDel() {
|
304 |
362 |
if (btnDel == null) {
|
305 |
363 |
btnDel = new JButton();
|
306 |
|
// btnDel.setPreferredSize(new java.awt.Dimension(23, 23));
|
307 |
|
btnDel.setText(PluginServices.getText(this, "remove"));
|
308 |
|
btnDel.setMargin(new java.awt.Insets(2, 0, 2, 0));
|
309 |
|
btnDel.setBounds(339, 300, 101, 20);
|
310 |
|
btnDel.setEnabled(false);
|
311 |
|
btnDel.addActionListener(new java.awt.event.ActionListener() {
|
312 |
|
public void actionPerformed(java.awt.event.ActionEvent e) {
|
313 |
|
delLayer();
|
314 |
|
}
|
315 |
|
});
|
|
364 |
ToolsSwingUtils.configurePickersButton(
|
|
365 |
btnDel,
|
|
366 |
"_Delete_layer",
|
|
367 |
"common-remove",
|
|
368 |
(ActionEvent e) -> {
|
|
369 |
delLayer();
|
|
370 |
},
|
|
371 |
null
|
|
372 |
);
|
316 |
373 |
}
|
317 |
374 |
return btnDel;
|
318 |
375 |
}
|
... | ... | |
322 |
379 |
*
|
323 |
380 |
* @return Button
|
324 |
381 |
*/
|
325 |
|
private JButton getBtnAdd() {
|
326 |
|
if (btnAdd == null) {
|
327 |
|
btnAdd = new JButton();
|
328 |
|
// btnAdd.setPreferredSize(new java.awt.Dimension(23, 23));
|
329 |
|
btnAdd.setText(PluginServices.getText(this, "add"));
|
330 |
|
btnAdd.setMargin(new java.awt.Insets(2, 0, 2, 0));
|
331 |
|
btnAdd.setBounds(236, 300, 101, 20);
|
332 |
|
btnAdd.setEnabled(false);
|
333 |
|
btnAdd.addActionListener(new java.awt.event.ActionListener() {
|
334 |
|
public void actionPerformed(java.awt.event.ActionEvent e) {
|
335 |
|
addLayer();
|
336 |
|
}
|
337 |
|
});
|
|
382 |
private JButton getBtnAdd() {
|
|
383 |
if (btnAdd == null) {
|
|
384 |
btnAdd = new JButton();
|
|
385 |
ToolsSwingUtils.configurePickersButton(btnAdd,
|
|
386 |
"_Add_layer",
|
|
387 |
"common-add",
|
|
388 |
(ActionEvent e) -> {
|
|
389 |
addLayer();
|
|
390 |
},
|
|
391 |
null
|
|
392 |
);
|
338 |
393 |
}
|
339 |
394 |
return btnAdd;
|
340 |
395 |
}
|
... | ... | |
344 |
399 |
*
|
345 |
400 |
* @return ScrollPane
|
346 |
401 |
*/
|
347 |
|
private JScrollPane getJScrollPane5() {
|
348 |
|
if (jScrollPane5 == null) {
|
349 |
|
jScrollPane5 = new JScrollPane();
|
350 |
|
jScrollPane5.setBounds(11, 155, 422, 120);
|
351 |
|
jScrollPane5.setViewportView(getLstSelectedLayers());
|
352 |
|
jScrollPane5.setPreferredSize(new java.awt.Dimension(205, 75));
|
|
402 |
private JScrollPane getSelectedLayersJScrollPane() {
|
|
403 |
if (selectedLayersJScrollPaneJScrollPane == null) {
|
|
404 |
selectedLayersJScrollPaneJScrollPane = new JScrollPane();
|
|
405 |
selectedLayersJScrollPaneJScrollPane.setViewportView(getLstSelectedLayers());
|
|
406 |
selectedLayersJScrollPaneJScrollPane.setPreferredSize(new java.awt.Dimension(205, 75));
|
353 |
407 |
}
|
354 |
408 |
|
355 |
|
return jScrollPane5;
|
|
409 |
return selectedLayersJScrollPaneJScrollPane;
|
356 |
410 |
}
|
357 |
411 |
|
358 |
412 |
/**
|
... | ... | |
363 |
417 |
private JTextField getJTxtNomCapa() {
|
364 |
418 |
if (jTxtNomCapa == null) {
|
365 |
419 |
jTxtNomCapa = new JTextField();
|
366 |
|
jTxtNomCapa.setBounds(10, 19, 460, 20);
|
367 |
420 |
jTxtNomCapa.setText(PluginServices.getText(this, "WMSLayer"));
|
368 |
421 |
jTxtNomCapa.addKeyListener(new java.awt.event.KeyAdapter() {
|
369 |
422 |
public void keyTyped(java.awt.event.KeyEvent e) {
|
... | ... | |
383 |
436 |
private JPanel getJPanelFormats() {
|
384 |
437 |
if (jPanelFormats == null) {
|
385 |
438 |
jPanelFormats = new JPanel();
|
386 |
|
jPanelFormats.setLayout(null);
|
|
439 |
jPanelFormats.setLayout(new BorderLayout());
|
387 |
440 |
jPanelFormats.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
388 |
441 |
null, PluginServices.getText(this, "select_formats"),
|
389 |
442 |
javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
|
390 |
443 |
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,
|
391 |
444 |
null));
|
392 |
|
jPanelFormats.setBounds(5, 10, 485, 145);
|
393 |
|
jPanelFormats.add(getJScrollPaneFormats(), null);
|
394 |
|
jPanelFormats.add(getChkTransparency(), null);
|
|
445 |
jPanelFormats.add(getJScrollPaneFormats(), BorderLayout.CENTER);
|
|
446 |
jPanelFormats.add(getChkTransparency(), BorderLayout.SOUTH);
|
395 |
447 |
}
|
396 |
448 |
return jPanelFormats;
|
397 |
449 |
}
|
... | ... | |
404 |
456 |
private JPanel getJPanelSrsSelection() {
|
405 |
457 |
if (jPanelSrsSelection == null) {
|
406 |
458 |
jPanelSrsSelection = new JPanel();
|
407 |
|
jPanelSrsSelection.setLayout(null);
|
|
459 |
jPanelSrsSelection.setLayout(new BorderLayout());
|
408 |
460 |
jPanelSrsSelection.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
409 |
461 |
null, PluginServices.getText(this, "seleccionar_srs"),
|
410 |
462 |
javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
|
411 |
463 |
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,
|
412 |
464 |
null));
|
413 |
|
jPanelSrsSelection.setBounds(5, 162, 485, 126);
|
414 |
|
jPanelSrsSelection.add(getJScrollPane2(), null);
|
|
465 |
JPanel panel = new JPanel(new BorderLayout());
|
|
466 |
JTextField txtFilter = new JTextField();
|
|
467 |
JButton btnFilter = new JButton();
|
|
468 |
panel.add(txtFilter,BorderLayout.CENTER);
|
|
469 |
panel.add(btnFilter,BorderLayout.EAST);
|
|
470 |
jPanelSrsSelection.add(panel, BorderLayout.NORTH);
|
|
471 |
jPanelSrsSelection.add(getJScrollPane2(), BorderLayout.CENTER);
|
|
472 |
ToolsSwingLocator.getToolsSwingManager().createFilteredListController(lstSRSs, txtFilter, btnFilter);
|
415 |
473 |
}
|
416 |
474 |
return jPanelSrsSelection;
|
417 |
475 |
}
|
... | ... | |
424 |
482 |
private JPanel getJPanelInfoByPointFormat() {
|
425 |
483 |
if (jPanelInfoByPointFormat == null) {
|
426 |
484 |
jPanelInfoByPointFormat = new JPanel();
|
427 |
|
jPanelInfoByPointFormat.setLayout(null);
|
|
485 |
jPanelInfoByPointFormat.setLayout(new BorderLayout());
|
428 |
486 |
jPanelInfoByPointFormat.setBorder(javax.swing.BorderFactory.createTitledBorder(
|
429 |
487 |
null, PluginServices.getText(this, "seleccionar_infobypoint_format"),
|
430 |
488 |
javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
|
431 |
489 |
javax.swing.border.TitledBorder.DEFAULT_POSITION, null,
|
432 |
490 |
null));
|
433 |
|
jPanelInfoByPointFormat.setBounds(5, 273, 485, 78);
|
434 |
|
jPanelInfoByPointFormat.add(getJScrollPane3(), null);
|
|
491 |
jPanelInfoByPointFormat.add(getInfoFormatsJScrollPane(), BorderLayout.CENTER);
|
435 |
492 |
}
|
436 |
493 |
return jPanelInfoByPointFormat;
|
437 |
494 |
}
|
... | ... | |
444 |
501 |
private JScrollPane getJScrollPaneFormats() {
|
445 |
502 |
if (jScrollPane6 == null) {
|
446 |
503 |
jScrollPane6 = new JScrollPane();
|
447 |
|
jScrollPane6.setBounds(5, 23, 470, 85);
|
448 |
504 |
jScrollPane6.setViewportView(getLstFormats());
|
449 |
505 |
jScrollPane6.setPreferredSize(new java.awt.Dimension(250, 85));
|
450 |
506 |
}
|
... | ... | |
469 |
525 |
fireWizardComplete(isCorrectlyConfigured());
|
470 |
526 |
}
|
471 |
527 |
});
|
472 |
|
chkTransparency.setBounds(15, 115, 421, 21);
|
473 |
528 |
chkTransparency.setVisible(true);
|
474 |
529 |
}
|
475 |
530 |
return chkTransparency;
|
... | ... | |
483 |
538 |
private JScrollPane getJScrollPane2() {
|
484 |
539 |
if (jScrollPane2 == null) {
|
485 |
540 |
jScrollPane2 = new JScrollPane();
|
486 |
|
jScrollPane2.setBounds(5, 23, 470, 91);
|
487 |
541 |
jScrollPane2.setViewportView(getLstSRSs());
|
488 |
542 |
jScrollPane2.setPreferredSize(new java.awt.Dimension(250, 91));
|
489 |
543 |
}
|
... | ... | |
496 |
550 |
*
|
497 |
551 |
* @return ScrollPane
|
498 |
552 |
*/
|
499 |
|
private JScrollPane getJScrollPane3() {
|
|
553 |
private JScrollPane getInfoFormatsJScrollPane() {
|
500 |
554 |
if (jScrollPane3 == null) {
|
501 |
555 |
jScrollPane3 = new JScrollPane();
|
502 |
|
jScrollPane3.setBounds(5, 23, 470, 45);
|
503 |
556 |
jScrollPane3.setViewportView(getLstInfoFormats());
|
504 |
557 |
jScrollPane3.setPreferredSize(new java.awt.Dimension(250, 120));
|
505 |
558 |
}
|
... | ... | |
847 |
900 |
public void valueChanged(javax.swing.event.ListSelectionEvent e) {
|
848 |
901 |
int i = lstSRSs.getSelectedIndex();
|
849 |
902 |
if (i != -1) {
|
850 |
|
oldSRS = (String) lstSRSs.getModel().getElementAt(i);
|
|
903 |
oldSRS = Objects.toString(lstSRSs.getModel().getElementAt(i), null);
|
851 |
904 |
}
|
852 |
905 |
fireWizardComplete(isCorrectlyConfigured());
|
853 |
906 |
}
|
... | ... | |
902 |
955 |
ArrayList<?> elements = ((JDnDListModel) lstSelectedLayers.getModel()).getElements();
|
903 |
956 |
WMSLayerNode[] layers = (WMSLayerNode[]) elements.toArray(new WMSLayerNode[0]);
|
904 |
957 |
|
905 |
|
SRSListModel model = new SRSListModel();
|
|
958 |
SRSList srsList = new SRSList();
|
906 |
959 |
|
907 |
960 |
if (layers.length == 0) {
|
908 |
|
lstSRSs.setModel(model);// new DefaultListModel());
|
909 |
961 |
sizeFixed = null;
|
910 |
962 |
} else {
|
911 |
963 |
TreeSet srsSet = new TreeSet();
|
912 |
964 |
srsSet.addAll(layers[0].getAllSrs());
|
913 |
|
model.setAll(srsSet);
|
|
965 |
srsList.setAll(srsSet);
|
914 |
966 |
for (int i = 1; i < layers.length; i++) {
|
915 |
|
model.setAll(model.intersect(layers[i].getAllSrs()));
|
|
967 |
srsList.setAll(srsList.intersect(layers[i].getAllSrs()));
|
916 |
968 |
}
|
917 |
|
lstSRSs.setModel(model);
|
918 |
969 |
}
|
|
970 |
FilteredListModel model = ToolsSwingLocator.getToolsSwingManager().createFilteredListModel();
|
|
971 |
for (String str : srsList) {
|
|
972 |
model.addElement(str);
|
|
973 |
}
|
|
974 |
lstSRSs.setModel(model);
|
|
975 |
|
919 |
976 |
int srsIndex = getSRSIndex(oldSRS);
|
920 |
977 |
if (srsIndex != -1) {
|
921 |
978 |
getLstSRSs().setSelectedIndex(srsIndex);
|
922 |
979 |
}
|
923 |
|
|
924 |
980 |
}
|
|
981 |
|
|
982 |
public class SRSList extends ArrayList<String> {
|
925 |
983 |
|
|
984 |
public void setAll(Collection<String> c) {
|
|
985 |
this.clear();
|
|
986 |
this.addAll(c);
|
|
987 |
}
|
|
988 |
|
|
989 |
public Collection intersect(Collection<String> c) {
|
|
990 |
TreeSet<String> resul = new TreeSet<>();
|
|
991 |
for (int i = 0; i < this.size(); i++) {
|
|
992 |
if (c.contains(this.get(i))) {
|
|
993 |
resul.add(this.get(i));
|
|
994 |
}
|
|
995 |
}
|
|
996 |
return resul;
|
|
997 |
}
|
|
998 |
}
|
|
999 |
|
|
1000 |
|
926 |
1001 |
public void setListenerSupport(WizardListenerSupport support) {
|
927 |
1002 |
listenerSupport = support;
|
928 |
1003 |
}
|
... | ... | |
986 |
1061 |
* @return
|
987 |
1062 |
*/
|
988 |
1063 |
public String getSRS() {
|
989 |
|
return (String) getLstSRSs().getSelectedValue();
|
|
1064 |
return Objects.toString(getLstSRSs().getSelectedValue(),null);
|
990 |
1065 |
}
|
991 |
1066 |
|
992 |
1067 |
/**
|
... | ... | |
1063 |
1138 |
public int getSRSIndex(String crs) {
|
1064 |
1139 |
for (int i = 0; i < getLstSRSs().getModel().getSize(); i++) {
|
1065 |
1140 |
if (crs != null
|
1066 |
|
&& crs.equals(getLstSRSs().getModel().getElementAt(i))) {
|
|
1141 |
&& StringUtils.equals(crs,Objects.toString(getLstSRSs().getModel().getElementAt(i), null))) {
|
1067 |
1142 |
return i;
|
1068 |
1143 |
}
|
1069 |
1144 |
}
|
... | ... | |
1117 |
1192 |
public JTabbedPane getJTabbedPane() {
|
1118 |
1193 |
if (jTabbedPane == null) {
|
1119 |
1194 |
jTabbedPane = new JTabbedPane();
|
1120 |
|
jTabbedPane.setBounds(4, 4, 502, 415);
|
1121 |
1195 |
InfoPanel ip = getTabInfo();
|
1122 |
1196 |
ip.addFocusListener(new FocusListener() {
|
1123 |
1197 |
public void focusGained(FocusEvent e) {
|
... | ... | |
1131 |
1205 |
StylesPanel sp = getTabStyle();
|
1132 |
1206 |
DimensionPanel dp = getTabDimensions();
|
1133 |
1207 |
|
1134 |
|
jTabbedPane.addTab(PluginServices.getText(this, "info"), null, ip,
|
1135 |
|
null);
|
1136 |
|
jTabbedPane.addTab(PluginServices.getText(this, "capas"), null,
|
1137 |
|
getTabLayers(), null);
|
1138 |
|
jTabbedPane.addTab(PluginServices.getText(this, "estilos"), null,
|
1139 |
|
sp, null);
|
|
1208 |
jTabbedPane.addTab(PluginServices.getText(this, "info"), null, ip, null);
|
|
1209 |
jTabbedPane.addTab(PluginServices.getText(this, "capas"), null,getTabLayers(), null);
|
|
1210 |
jTabbedPane.addTab(PluginServices.getText(this, "estilos"), null,sp, null);
|
1140 |
1211 |
stylesTabIndex = jTabbedPane.getTabCount() - 1;
|
1141 |
|
jTabbedPane.addTab(PluginServices.getText(this, "dimensiones"),
|
1142 |
|
null, dp, null);
|
|
1212 |
jTabbedPane.addTab(PluginServices.getText(this, "dimensiones"),null, dp, null);
|
1143 |
1213 |
dimensionTabIndex = jTabbedPane.getTabCount() - 1;
|
1144 |
|
jTabbedPane.addTab(PluginServices.getText(this, "formatos"), null,
|
1145 |
|
getTabFormats(), null);
|
|
1214 |
jTabbedPane.addTab(PluginServices.getText(this, "formatos"), null,getTabFormats(), null);
|
1146 |
1215 |
jTabbedPane.setEnabledAt(dimensionTabIndex, false);
|
1147 |
1216 |
jTabbedPane.setEnabledAt(stylesTabIndex, false);
|
1148 |
1217 |
}
|
... | ... | |
1157 |
1226 |
private JPanel getTabLayers() {
|
1158 |
1227 |
if (tabLayers == null) {
|
1159 |
1228 |
tabLayers = new JPanel();
|
1160 |
|
tabLayers.setLayout(null);
|
1161 |
|
tabLayers.add(getJPanel4(), null);
|
1162 |
|
tabLayers.add(getJPanel2(), null);
|
|
1229 |
tabLayers.setLayout(new BorderLayout());
|
|
1230 |
tabLayers.add(getJPanelLayerName(), BorderLayout.NORTH);
|
|
1231 |
tabLayers.add(getLayersJPanel(), BorderLayout.CENTER);
|
1163 |
1232 |
}
|
1164 |
1233 |
return tabLayers;
|
1165 |
1234 |
}
|
... | ... | |
1740 |
1809 |
chkExtendedNames.isSelected());
|
1741 |
1810 |
}
|
1742 |
1811 |
});
|
1743 |
|
chkExtendedNames.setBounds(19, 300, 212, 20);
|
|
1812 |
// chkExtendedNames.setBounds(19, 300, 212, 20);
|
1744 |
1813 |
chkExtendedNames.setSelected(fPrefs.getBoolean("show_layer_names",
|
1745 |
1814 |
false));
|
1746 |
1815 |
|
... | ... | |
1756 |
1825 |
private JButton getBtnUp() {
|
1757 |
1826 |
if (btnUp == null) {
|
1758 |
1827 |
btnUp = new JButton();
|
1759 |
|
btnUp.setBounds(438, 184, 30, 30);
|
1760 |
|
btnUp.setToolTipText(PluginServices.getText(this, "move_layer_up"));
|
1761 |
|
btnUp.addActionListener(new java.awt.event.ActionListener() {
|
1762 |
|
public void actionPerformed(java.awt.event.ActionEvent e) {
|
|
1828 |
ToolsSwingUtils.configurePickersButton(
|
|
1829 |
btnUp,
|
|
1830 |
"_Up",
|
|
1831 |
"common-arrow-up",
|
|
1832 |
(ActionEvent e) -> {
|
1763 |
1833 |
LayerList list = getLstSelectedLayers();
|
1764 |
1834 |
int[] selectedIndices = list.getSelectedIndices();
|
1765 |
1835 |
int index = list.getSelectedIndex();
|
... | ... | |
1769 |
1839 |
m.itemsMoved(index - 1, new int[] { index });
|
1770 |
1840 |
list.setSelectedIndex(index - 1);
|
1771 |
1841 |
}
|
1772 |
|
}
|
1773 |
|
});
|
1774 |
|
btnUp.setIcon(IconThemeHelper.getImageIcon("aplication-preferences-uparrow"));
|
|
1842 |
},
|
|
1843 |
null
|
|
1844 |
);
|
1775 |
1845 |
}
|
1776 |
1846 |
return btnUp;
|
1777 |
1847 |
}
|
... | ... | |
1784 |
1854 |
private JButton getBtnDown() {
|
1785 |
1855 |
if (btnDown == null) {
|
1786 |
1856 |
btnDown = new JButton();
|
1787 |
|
btnDown.setBounds(438, 215, 30, 30);
|
1788 |
|
btnDown.setToolTipText(PluginServices.getText(this,
|
1789 |
|
"move_layer_down"));
|
1790 |
|
btnDown.addActionListener(new java.awt.event.ActionListener() {
|
1791 |
|
public void actionPerformed(java.awt.event.ActionEvent e) {
|
1792 |
|
LayerList list = getLstSelectedLayers();
|
1793 |
|
int[] selectedIndices = list.getSelectedIndices();
|
1794 |
|
int index = list.getSelectedIndex();
|
1795 |
|
if (selectedIndices != null
|
1796 |
|
&& selectedIndices.length == 1
|
1797 |
|
&& index < getLstSelectedLayers().getModel()
|
1798 |
|
.getSize() - 1) {
|
1799 |
|
JDnDListModel m = (JDnDListModel) list.getModel();
|
1800 |
|
m.itemsMoved(index + 1, new int[] { index });
|
1801 |
|
list.setSelectedIndex(index + 1);
|
1802 |
|
}
|
1803 |
|
}
|
1804 |
|
});
|
1805 |
|
btnDown.setIcon(IconThemeHelper.getImageIcon("aplication-preferences-downarrow"));
|
|
1857 |
ToolsSwingUtils.configurePickersButton(
|
|
1858 |
btnDown,
|
|
1859 |
"_Down",
|
|
1860 |
"common-arrow-down",
|
|
1861 |
(ActionEvent e) -> {
|
|
1862 |
LayerList list = getLstSelectedLayers();
|
|
1863 |
int[] selectedIndices = list.getSelectedIndices();
|
|
1864 |
int index = list.getSelectedIndex();
|
|
1865 |
if (selectedIndices != null
|
|
1866 |
&& selectedIndices.length == 1
|
|
1867 |
&& index < getLstSelectedLayers().getModel()
|
|
1868 |
.getSize() - 1) {
|
|
1869 |
JDnDListModel m = (JDnDListModel) list.getModel();
|
|
1870 |
m.itemsMoved(index + 1, new int[] { index });
|
|
1871 |
list.setSelectedIndex(index + 1);
|
|
1872 |
}
|
|
1873 |
},
|
|
1874 |
null
|
|
1875 |
);
|
1806 |
1876 |
}
|
1807 |
1877 |
return btnDown;
|
1808 |
1878 |
}
|
... | ... | |
1828 |
1898 |
if (chkDisagregate == null) {
|
1829 |
1899 |
|
1830 |
1900 |
chkDisagregate = new JCheckBox();
|
1831 |
|
chkDisagregate.setBounds(new java.awt.Rectangle(19,276,269,20));
|
1832 |
1901 |
chkDisagregate.setText(PluginServices.getText(this,
|
1833 |
1902 |
"disagregate_layers"));
|
1834 |
1903 |
chkDisagregate.setSelected(false);
|
... | ... | |
1859 |
1928 |
public WMSServerExplorer getExplorer() {
|
1860 |
1929 |
return explorer;
|
1861 |
1930 |
}
|
1862 |
|
} // @jve:decl-index=0:visual-constraint="10,10"
|
|
1931 |
}
|