public void openLink(String link) { if (WWUtil.isEmpty(link)) return; try { try { // See if the link is a URL, and invoke the browser if it is URL url = new URL(link.replace(" ", "%20")); Desktop.getDesktop().browse(url.toURI()); return; } catch (MalformedURLException ignored) { // just means that the link is not a URL } // It's not a URL, so see if it's a file and invoke the desktop to open it if it is. File file = new File(link); if (file.exists()) { Desktop.getDesktop().open(new File(link)); return; } String message = "Cannot open resource. It's not a valid file or URL."; Util.getLogger().log(Level.SEVERE, message); this.showErrorDialog(null, "No Reconocido V\u00ednculo", message); } catch (UnsupportedOperationException e) { String message = "Unable to open resource.\n" + link + (e.getMessage() != null ? "\n" + e.getMessage() : ""); Util.getLogger().log(Level.SEVERE, message, e); this.showErrorDialog(e, "Error Opening Resource", message); } catch (IOException e) { String message = "I/O error while opening resource.\n" + link + (e.getMessage() != null ? ".\n" + e.getMessage() : ""); Util.getLogger().log(Level.SEVERE, message, e); this.showErrorDialog(e, "I/O Error", message); } catch (Exception e) { String message = "Error attempting to open resource.\n" + link + (e.getMessage() != null ? "\n" + e.getMessage() : ""); Util.getLogger().log(Level.SEVERE, message); this.showMessageDialog(message, "Error Opening Resource", JOptionPane.ERROR_MESSAGE); } }
public void selected(SelectEvent event) { try { if (event.isRollover()) { if (this.lastSelectedObject == event.getTopObject()) return; // same thing selected if (this.lastSelectedObject != null) { this.hideAnnotationPanel(); this.lastSelectedObject = null; } if (event.getTopObject() != null && event.getTopObject() instanceof AVList) { String annoText = ((AVList) event.getTopObject()).getStringValue(Constants.INFO_PANEL_TEXT); if (!WWUtil.isEmpty(annoText)) { this.lastSelectedObject = (AVList) event.getTopObject(); this.showAnnotationPanel(annoText); } } } } catch (Exception e) { // Wrap the handler in a try/catch to keep exceptions from bubbling up Util.getLogger().warning(e.getMessage() != null ? e.getMessage() : e.toString()); } }