apply version 2.7 copyright
[jalview.git] / src / jalview / gui / Desktop.java
index 5dadeb3..2a72e44 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
  * 
  * This file is part of Jalview.
  * 
 package jalview.gui;
 
 import jalview.bin.Cache;
-import jalview.io.*;
+import jalview.io.FileLoader;
+import jalview.io.FormatAdapter;
+import jalview.io.IdentifyFile;
+import jalview.io.JalviewFileChooser;
+import jalview.io.JalviewFileView;
 import jalview.ws.params.ParamManager;
 
-import java.awt.*;
-import java.awt.datatransfer.*;
-import java.awt.dnd.*;
-import java.awt.event.*;
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.FontMetrics;
+import java.awt.Graphics;
+import java.awt.GridLayout;
+import java.awt.Point;
+import java.awt.Rectangle;
+import java.awt.Toolkit;
+import java.awt.datatransfer.Clipboard;
+import java.awt.datatransfer.ClipboardOwner;
+import java.awt.datatransfer.DataFlavor;
+import java.awt.datatransfer.Transferable;
+import java.awt.dnd.DnDConstants;
+import java.awt.dnd.DropTargetDragEvent;
+import java.awt.dnd.DropTargetDropEvent;
+import java.awt.dnd.DropTargetEvent;
+import java.awt.dnd.DropTargetListener;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.FocusEvent;
+import java.awt.event.FocusListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
 import java.beans.PropertyVetoException;
 import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.FileOutputStream;
-import java.io.InputStream;
 import java.lang.reflect.Constructor;
 import java.net.URL;
-import java.net.URLConnection;
-import java.nio.channels.ReadableByteChannel;
-import java.util.*;
-
-import javax.swing.*;
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.StringTokenizer;
+import java.util.Vector;
+
+import javax.swing.DefaultDesktopManager;
+import javax.swing.DesktopManager;
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JComponent;
+import javax.swing.JDesktopPane;
+import javax.swing.JFrame;
+import javax.swing.JInternalFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JProgressBar;
+import javax.swing.SwingUtilities;
 import javax.swing.event.MenuEvent;
 import javax.swing.event.MenuListener;
 
-import com.sun.xml.internal.ws.streaming.TidyXMLStreamReader;
-
 /**
  * Jalview Desktop
  * 
@@ -281,8 +319,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       @Override
       public void run()
       {
+        Cache.log.debug("Starting news thread.");
+
         jvnews = new BlogReader(me);
         showNews.setVisible(true);
+        Cache.log.debug("Completed news thread.");
       }
     }).start();
     
@@ -371,22 +412,19 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   void showNews(boolean visible)
   {
     {
-      jvnews.setVisible(visible);
+      Cache.log.debug((visible?"Showing":"Hiding")+" news.");
       showNews.setSelected(visible);
-      if (visible)
+      if (visible && !jvnews.isVisible())
       {
-        jvnews.refreshNews();
-        jvnews.toFront();
-        // try real hard to get focus when the news is first opened
         new Thread(new Runnable() {
           @Override
           public void run()
           {
-            while (jvnews.isVisible() && !jvnews.requestFocusInWindow())
-            {
-              try { Thread.sleep(50); } catch (InterruptedException x) {}; 
-            }
-            
+            long instance=System.currentTimeMillis();
+            Desktop.instance.setProgressBar("Refreshing news", instance);
+            jvnews.refreshNews();
+            Desktop.instance.setProgressBar(null, instance);
+            jvnews.showNews();
           }
         }).start();
       }
@@ -2022,10 +2060,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
    */
   public void relayerWindows()
   {
-    if (jvnews!=null && jvnews.isVisible())
-    {
-      jvnews.toFront();
-    }
+    
   }
 
   protected JMenuItem groovyShell;