X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=d54c887f15b73532d1aa3609b6c36b312a7b881f;hb=18e6142e442c42442429c12ff48c7d637b855dca;hp=bb490aeb4509d8448f161dbdbbc1fb10cc3dec96;hpb=b57a02c25e335d033c97f8a6bacd6b54f62bd2b6;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index bb490ae..d54c887 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -1,19 +1,20 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) - * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1) + * Copyright (C) 2014 The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.gui; @@ -23,6 +24,7 @@ import jalview.io.FormatAdapter; import jalview.io.IdentifyFile; import jalview.io.JalviewFileChooser; import jalview.io.JalviewFileView; +import jalview.util.MessageManager; import jalview.ws.params.ParamManager; import java.awt.BorderLayout; @@ -59,7 +61,6 @@ import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; import java.net.URL; import java.util.ArrayList; import java.util.Hashtable; @@ -83,7 +84,6 @@ import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPopupMenu; import javax.swing.JProgressBar; -import javax.swing.JTextArea; import javax.swing.SwingUtilities; import javax.swing.event.HyperlinkEvent; import javax.swing.event.MenuEvent; @@ -559,7 +559,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements void showPasteMenu(int x, int y) { JPopupMenu popup = new JPopupMenu(); - JMenuItem item = new JMenuItem("Paste To New Window"); + JMenuItem item = new JMenuItem(MessageManager.getString("label.paste_new_window")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) @@ -649,8 +649,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements // A HEADLESS STATE WHEN NO DESKTOP EXISTS. MUST RETURN // IF JALVIEW IS RUNNING HEADLESS // /////////////////////////////////////////////// - if (System.getProperty("java.awt.headless") != null - && System.getProperty("java.awt.headless").equals("true")) + if (instance == null || (System.getProperty("java.awt.headless") != null + && System.getProperty("java.awt.headless").equals("true"))) { return; } @@ -807,6 +807,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements */ public void drop(DropTargetDropEvent evt) { + boolean success=true; Transferable t = evt.getTransferable(); java.util.List files = null; java.util.List protocols = null; @@ -855,6 +856,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements } } catch (Exception e) { + success=false; } if (files != null) @@ -883,8 +885,10 @@ public class Desktop extends jalview.jbgui.GDesktop implements } } catch (Exception ex) { + success=false; } } + evt.dropComplete(success); // need this to ensure input focus is properly transfered to any new windows created } /** @@ -902,8 +906,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements jalview.bin.Cache.getProperty("DEFAULT_FILE_FORMAT")); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle("Open local file"); - chooser.setToolTipText("Open"); + chooser.setDialogTitle(MessageManager.getString("label.open_local_file")); + chooser.setToolTipText(MessageManager.getString("action.open")); int value = chooser.showOpenDialog(this); @@ -914,7 +918,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements .getSelectedFile().getParent()); String format = null; - if (chooser.getSelectedFormat().equals("Jalview")) + if (chooser.getSelectedFormat()!=null && chooser.getSelectedFormat().equals("Jalview")) { format = "Jalview"; } @@ -945,7 +949,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements { // This construct allows us to have a wider textfield // for viewing - JLabel label = new JLabel("Enter URL of Input File"); + JLabel label = new JLabel(MessageManager.getString("label.input_file_url")); final JComboBox history = new JComboBox(); JPanel panel = new JPanel(new GridLayout(2, 1)); @@ -970,7 +974,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements } int reply = JOptionPane.showInternalConfirmDialog(desktop, panel, - "Input Alignment From URL", JOptionPane.OK_CANCEL_OPTION); + MessageManager.getString("label.input_alignment_from_url"), JOptionPane.OK_CANCEL_OPTION); if (reply != JOptionPane.OK_OPTION) { @@ -1713,7 +1717,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements chooser.setFileView(new JalviewFileView()); chooser.setDialogTitle("Open a saved VAMSAS session"); - chooser.setToolTipText("select a vamsas session to be opened as a new vamsas session."); + chooser.setToolTipText(MessageManager.getString("label.select_vamsas_session_opened_as_new_vamsas_session")); int value = chooser.showOpenDialog(this); @@ -1723,8 +1727,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements if (!vamsasImport(chooser.getSelectedFile())) { JOptionPane.showInternalMessageDialog(Desktop.desktop, - "Couldn't import '" + fle + "' as a new vamsas session.", - "Vamsas Document Import Failed", + MessageManager.formatMessage("label.couldnt_import_as_vamsas_session", new String[]{fle}), + MessageManager.getString("label.vamsas_document_import_failed"), JOptionPane.ERROR_MESSAGE); } } @@ -1867,7 +1871,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements protected void setupVamsasConnectedGui() { - vamsasStart.setText("Session Update"); + vamsasStart.setText(MessageManager.getString("label.session_update")); vamsasSave.setVisible(true); vamsasStop.setVisible(true); vamsasImport.setVisible(false); // Document import to existing session is @@ -1879,7 +1883,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements vamsasSave.setVisible(false); vamsasStop.setVisible(false); vamsasImport.setVisible(true); - vamsasStart.setText("New Vamsas Session"); + vamsasStart.setText(MessageManager.getString("label.new_vamsas_session")); } public void vamsasStop_actionPerformed(ActionEvent e) @@ -1915,7 +1919,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements { JMenuItem sessit = new JMenuItem(); sessit.setText(sess[i]); - sessit.setToolTipText("Connect to session " + sess[i]); + sessit.setToolTipText(MessageManager.formatMessage("label.connect_to_session", new String[]{sess[i]})); final Desktop dsktp = this; final String mysesid = sess[i]; sessit.addActionListener(new ActionListener() @@ -2138,9 +2142,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements if (fm != null) { g.drawString( - "Total Free Memory: " + df.format(totalFreeMemory) - + "MB; Max Memory: " + df.format(maxMemory) - + "MB; " + df.format(percentUsage) + "%", 10, + MessageManager.formatMessage("label.memory_stats", new String[]{df.format(totalFreeMemory),df.format(maxMemory),df.format(percentUsage)}), 10, getHeight() - fm.getHeight()); } } @@ -2163,7 +2165,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements if (jalview.bin.Cache.groovyJarsPresent()) { groovyShell = new JMenuItem(); - groovyShell.setText("Groovy Console..."); + groovyShell.setText(MessageManager.getString("label.groovy_console")); groovyShell.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -2343,7 +2345,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements final JPanel progressPanel = (JPanel) progressBars.get(new Long(id)); if (handler.canCancel()) { - JButton cancel = new JButton("Cancel"); + JButton cancel = new JButton(MessageManager.getString("action.cancel")); final IProgressIndicator us = this; cancel.addActionListener(new ActionListener() { @@ -2438,7 +2440,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements { boolean alive = true; Thread t0 = null, t1 = null, t2 = null; - + // JAL-940 - JALVIEW 1 services are now being EOLed as of JABA 2.1 release + if (true) + { // todo: changesupport handlers need to be transferred if (discoverer == null) { @@ -2448,28 +2452,31 @@ public class Desktop extends jalview.jbgui.GDesktop implements } // JAL-940 - disabled JWS1 service configuration - always start discoverer // until we phase out completely - if (true) - { (t0 = new Thread(discoverer)).start(); } - try + // ENFIN services are EOLed as of Jalview 2.8.1 release + if (false) { - if (Cache.getDefault("SHOW_ENFIN_SERVICES", true)) + try { - // EnfinEnvision web service menu entries are rebuild every time the - // menu is shown, so no changeSupport events are needed. - jalview.ws.EnfinEnvision2OneWay.getInstance(); - (t1 = new Thread(jalview.ws.EnfinEnvision2OneWay.getInstance())) - .start(); + if (Cache.getDefault("SHOW_ENFIN_SERVICES", true)) + { + // EnfinEnvision web service menu entries are rebuild every time the + // menu is shown, so no changeSupport events are needed. + jalview.ws.EnfinEnvision2OneWay.getInstance(); + (t1 = new Thread(jalview.ws.EnfinEnvision2OneWay.getInstance())) + .start(); + } + } catch (Exception e) + { + Cache.log + .info("Exception when trying to launch Envision2 workflow discovery.", + e); + Cache.log.info(e.getStackTrace()); } - } catch (Exception e) - { - Cache.log - .info("Exception when trying to launch Envision2 workflow discovery.", - e); - Cache.log.info(e.getStackTrace()); } + if (Cache.getDefault("SHOW_JWS2_SERVICES", true)) { if (jalview.ws.jws2.Jws2Discoverer.getDiscoverer().isRunning())