Revision 5262 branches/MULTITHREADING_DEVELOPMENT/extensions/extWMS/src/com/iver/cit/gvsig/gui/wizards/WMSWizard.java
WMSWizard.java | ||
---|---|---|
57 | 57 |
import javax.swing.tree.TreePath; |
58 | 58 |
|
59 | 59 |
import org.apache.log4j.Logger; |
60 |
import org.gvsig.gui.beans.CancellableComponent; |
|
61 |
import org.gvsig.gui.beans.ProgressDialog; |
|
60 | 62 |
|
61 | 63 |
import com.iver.andami.PluginServices; |
62 | 64 |
import com.iver.andami.persistence.serverData.ServerDataPersistence; |
63 |
import com.iver.cit.gvsig.fmap.DriverException; |
|
64 | 65 |
import com.iver.cit.gvsig.fmap.drivers.WMSListener; |
65 | 66 |
import com.iver.cit.gvsig.fmap.drivers.wms.FMapWMSDriver; |
66 | 67 |
import com.iver.cit.gvsig.fmap.exceptions.CannotReprojectException; |
... | ... | |
82 | 83 |
* |
83 | 84 |
* @author Jaume Dominguez Faus |
84 | 85 |
*/ |
85 |
public class WMSWizard extends WizardPanel { |
|
86 |
public class WMSWizard extends WizardPanel implements CancellableComponent {
|
|
86 | 87 |
private static Logger logger = Logger.getLogger(WMSWizard.class.getName()); |
87 | 88 |
protected int page; |
88 | 89 |
protected boolean connected = false; |
... | ... | |
106 | 107 |
private static Preferences fPrefs = Preferences.userRoot().node( "gvsig.wms-wizard" ); |
107 | 108 |
private boolean refreshing = fPrefs.getBoolean("refresh_capabilities", false); |
108 | 109 |
protected int firstPage; |
109 |
|
|
110 |
private ProgressDialog dlg = new ProgressDialog(this, PluginServices.getText(this, "progress"), 3); |
|
111 |
|
|
110 | 112 |
public WMSWizard (WMSParamsPanel params){ |
111 | 113 |
|
112 | 114 |
super(); |
... | ... | |
137 | 139 |
new java.awt.event.MouseAdapter() { |
138 | 140 |
public void mouseClicked(java.awt.event.MouseEvent e) { |
139 | 141 |
page = wmsParamsPanel.currentPage() + 1; |
140 |
activarVisualizarBotones();
|
|
142 |
activeAndShowButtons();
|
|
141 | 143 |
} |
142 | 144 |
}); |
143 | 145 |
this.add(wmsParamsPanel, null); |
... | ... | |
182 | 184 |
this.add(getBtnSiguiente(), null); |
183 | 185 |
this.add(lblServerType, null); |
184 | 186 |
this.add(lblServerTypeValue, null); |
185 |
activarVisualizarBotones();
|
|
187 |
activeAndShowButtons();
|
|
186 | 188 |
} |
187 | 189 |
|
188 | 190 |
|
... | ... | |
195 | 197 |
new java.awt.event.MouseAdapter() { |
196 | 198 |
public void mouseClicked(java.awt.event.MouseEvent e) { |
197 | 199 |
page = wmsParamsPanel.currentPage() + 1; |
198 |
activarVisualizarBotones();
|
|
200 |
activeAndShowButtons();
|
|
199 | 201 |
} |
200 | 202 |
}); |
201 | 203 |
} |
... | ... | |
208 | 210 |
*/ |
209 | 211 |
private void addHost(String host) { |
210 | 212 |
host = host.trim(); |
211 |
|
|
212 |
// DefaultComboBoxModel model = (DefaultComboBoxModel) getTxtHost() |
|
213 |
// .getModel(); |
|
214 |
|
|
215 |
// if (model.getIndexOf(host) < 0) { |
|
216 |
// model.addElement(host); |
|
217 |
|
|
218 |
// PluginServices ps = PluginServices.getPluginServices(this); |
|
219 |
// XMLEntity xml = ps.getPersistentXML(); |
|
220 |
|
|
221 |
// try { |
|
222 |
// String[] servers = xml.getStringArrayProperty("wms-servers"); |
|
223 |
// String[] newServers = new String[servers.length + 1]; |
|
224 |
// System.arraycopy(servers, 0, newServers, 0, servers.length); |
|
225 |
// newServers[servers.length] = host; |
|
226 |
// xml.putProperty("wms-servers", newServers); |
|
227 |
// } catch (NotExistInXMLEntity e) { |
|
228 |
// xml.putProperty("wms-servers", new String[] { host }); |
|
229 |
// } |
|
230 |
|
|
231 |
// ps.setPersistentXML(xml); |
|
232 |
// } |
|
233 |
|
|
234 | 213 |
ServerDataPersistence persistence = new ServerDataPersistence(this,ServerData.SERVER_TYPE_WMS); |
235 | 214 |
persistence.addServerData(new ServerData(host, ServerData.SERVER_TYPE_WMS)); |
236 |
|
|
237 |
|
|
238 | 215 |
} |
239 | 216 |
|
240 | 217 |
private void connect() { |
241 | 218 |
String host = cmbHost.getModel().getSelectedItem().toString(); |
242 | 219 |
|
243 | 220 |
try { |
221 |
getBtnSiguiente().setEnabled(false); |
|
222 |
dlg.setVisible(true); |
|
223 |
dlg.setBounds(300, 300, dlg.getWidth(), dlg.getHeight()); |
|
244 | 224 |
dataSource.setHost(new URL(host), refreshing); |
245 | 225 |
dataSource.setWizardListener(new WMSListener() { |
246 | 226 |
|
247 | 227 |
public void newEvent(int idRequest, int eventType) { |
248 |
if (idRequest == WMSListener.CAPABILITIES && eventType == WMSListener.FINISHED) |
|
249 |
rellenarControles(); |
|
228 |
if (idRequest == WMSListener.CAPABILITIES) { |
|
229 |
int progress=0; |
|
230 |
if (eventType == WMSListener.FINISHED) { |
|
231 |
fillupControls(); |
|
232 |
progress = 3; |
|
233 |
dlg.setVisible(false); |
|
234 |
} else if (eventType == WMSListener.CANCELLED) { |
|
235 |
progress = 3; |
|
236 |
dlg.setStatusMessage(PluginServices.getText(this, "cancelled")); |
|
237 |
dlg.setVisible(false); |
|
238 |
} else if (eventType == WMSListener.FAILED) { |
|
239 |
progress = 3; |
|
240 |
dlg.setStatusMessage(PluginServices.getText(this, "failed")); |
|
241 |
} else if (eventType == WMSListener.STARTED) { |
|
242 |
dlg.setStatusMessage(PluginServices.getText(this, "starting")); |
|
243 |
progress = 1; |
|
244 |
} else if (eventType == WMSListener.TRANSFERRING) { |
|
245 |
progress = 2; |
|
246 |
dlg.setStatusMessage(PluginServices.getText(this, "transferring")); |
|
247 |
} |
|
248 |
dlg.setProgress(progress); |
|
249 |
} |
|
250 | 250 |
} |
251 |
|
|
252 | 251 |
}); |
253 | 252 |
} catch (Exception e) { |
254 | 253 |
listenerSupport.callError(e); |
... | ... | |
259 | 258 |
/** |
260 | 259 |
* DOCUMENT ME! |
261 | 260 |
*/ |
262 |
private void rellenarControles() {
|
|
261 |
private void fillupControls() {
|
|
263 | 262 |
try { |
264 | 263 |
String host = cmbHost.getModel().getSelectedItem().toString(); |
265 | 264 |
|
... | ... | |
270 | 269 |
addHost(host); |
271 | 270 |
wmsParamsPanel.setWizardData(dataSource); |
272 | 271 |
connected = true; |
273 |
activarVisualizarBotones();
|
|
272 |
activeAndShowButtons();
|
|
274 | 273 |
} catch (Exception e) { |
275 | 274 |
listenerSupport.callError(e); |
276 | 275 |
e.printStackTrace(); |
... | ... | |
280 | 279 |
/** |
281 | 280 |
* DOCUMENT ME! |
282 | 281 |
*/ |
283 |
protected void activarVisualizarBotones() {
|
|
282 |
protected void activeAndShowButtons() {
|
|
284 | 283 |
if (page == firstPage) { |
285 | 284 |
getBtnAnterior().setEnabled(false); |
286 | 285 |
getBtnSiguiente().setVisible(true); |
... | ... | |
567 | 566 |
page++; |
568 | 567 |
getPanelPage1().setVisible(false); |
569 | 568 |
getPanelPage2().setVisible(true); |
570 |
activarVisualizarBotones();
|
|
569 |
activeAndShowButtons();
|
|
571 | 570 |
} |
572 | 571 |
}); |
573 | 572 |
} |
... | ... | |
592 | 591 |
// Tenemos que retroceder en el wcsParamsPanel |
593 | 592 |
wmsParamsPanel.retrocedeTab(); |
594 | 593 |
page = wmsParamsPanel.currentPage() + 1; |
595 |
activarVisualizarBotones();
|
|
594 |
activeAndShowButtons();
|
|
596 | 595 |
} else if (page==firstPage){ |
597 |
activarVisualizarBotones();
|
|
596 |
activeAndShowButtons();
|
|
598 | 597 |
page = firstPage +1; |
599 | 598 |
//wmsParamsPanel.limpiaWizard(); |
600 | 599 |
getLblTitle().setText("-"); |
... | ... | |
960 | 959 |
} |
961 | 960 |
return chkCaching; |
962 | 961 |
} |
962 |
|
|
963 |
public void cancel() { |
|
964 |
dataSource.cancelTransfer(); |
|
965 |
} |
|
963 | 966 |
} // @jve:decl-index=0:visual-constraint="10,10" |
Also available in: Unified diff