JAL-969 - refactor colourscheme machinery from GUI code to core alignment view model
[jalview.git] / src / jalview / gui / Desktop.java
index 01a7e69..300fcc2 100644 (file)
@@ -204,6 +204,10 @@ public class Desktop extends jalview.jbgui.GDesktop implements
 
     public void dragFrame(JComponent f, int newX, int newY)
     {
+      if (newY<0)
+      {
+        newY=0;
+      }
       delegate.dragFrame(f, newX, newY);
     }
 
@@ -240,6 +244,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     public void resizeFrame(JComponent f, int newX, int newY, int newWidth,
             int newHeight)
     {
+      Rectangle b=desktop.getBounds();
+      if (newY<0)
+      {
+        newY=0;
+      }
       delegate.resizeFrame(f, newX, newY, newWidth, newHeight);
     }
 
@@ -282,12 +291,14 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     //sp.getViewport().setView(desktop);
     //getContentPane().add(sp, BorderLayout.CENTER);
     getContentPane().add(desktop, BorderLayout.CENTER);
-      desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
+    desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
+    
       
     // This line prevents Windows Look&Feel resizing all new windows to maximum
     // if previous window was maximised
     desktop.setDesktopManager(new MyDesktopManager(
             new DefaultDesktopManager()));
+    
     Rectangle dims = getLastKnownDimensions("");
     if (dims != null)
     {
@@ -335,7 +346,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       }
     });
 
-    this.addMouseListener(new MouseAdapter()
+    MouseAdapter ma;
+    this.addMouseListener(ma=new MouseAdapter()
     {
       public void mousePressed(MouseEvent evt)
       {
@@ -345,6 +357,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         }
       }
     });
+    desktop.addMouseListener(ma);
+   
     this.addFocusListener(new FocusListener()
     {
       
@@ -1051,23 +1065,30 @@ public class Desktop extends jalview.jbgui.GDesktop implements
 
     message.toString(), "About Jalview", JOptionPane.INFORMATION_MESSAGE);
   }
+
   public StringBuffer getAboutMessage(boolean shortv)
   {
-    StringBuffer message=new StringBuffer();
+    StringBuffer message = new StringBuffer();
     message.append("<html>");
     if (shortv)
-    { 
+    {
       message.append("<h1><strong>Jalview "
-              + jalview.bin.Cache.getProperty("VERSION") + "</strong></h1><br>");
-      message.append("<strong>Last Updated: <em>"+jalview.bin.Cache.getDefault("BUILD_DATE", "unknown")+"</em></strong>");
-      
-    } else {
-      
-    message.append("<strong>Jalview version "
-            + jalview.bin.Cache.getProperty("VERSION") + "; last updated: "
-            + jalview.bin.Cache.getDefault("BUILD_DATE", "unknown"));
+              + jalview.bin.Cache.getProperty("VERSION")
+              + "</strong></h1><br>");
+      message.append("<strong>Last Updated: <em>"
+              + jalview.bin.Cache.getDefault("BUILD_DATE", "unknown")
+              + "</em></strong>");
+
     }
-    
+    else
+    {
+
+      message.append("<strong>Jalview version "
+              + jalview.bin.Cache.getProperty("VERSION")
+              + "; last updated: "
+              + jalview.bin.Cache.getDefault("BUILD_DATE", "unknown"));
+    }
+
     if (jalview.bin.Cache.getDefault("LATEST_VERSION", "Checking").equals(
             "Checking"))
     {
@@ -1076,25 +1097,32 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     else if (!jalview.bin.Cache.getDefault("LATEST_VERSION", "Checking")
             .equals(jalview.bin.Cache.getProperty("VERSION")))
     {
-      boolean red=false;
+      boolean red = false;
       if (jalview.bin.Cache.getProperty("VERSION").toLowerCase()
               .indexOf("automated build") == -1)
       {
-        red=true;
+        red = true;
         // Displayed when code version and jnlp version do not match and code
         // version is not a development build
         message.append("<div style=\"color: #FF0000;font-style: bold;\">");
       }
-      
+
       message.append("<br>!! Jalview version "
-                      + jalview.bin.Cache.getDefault("LATEST_VERSION",
-                              "..Checking..")
-                      + " is available for download from "+jalview.bin.Cache.getDefault("www.jalview.org","http://www.jalview.org")+" !!");
-      if (red) {
+              + jalview.bin.Cache.getDefault("LATEST_VERSION",
+                      "..Checking..")
+              + " is available for download from "
+              + jalview.bin.Cache.getDefault("www.jalview.org",
+                      "http://www.jalview.org") + " !!");
+      if (red)
+      {
         message.append("</div>");
       }
-    }    
-    message.append("<br>Authors:  "+jalview.bin.Cache.getDefault("AUTHORNAMES","Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton")
+    }
+    message.append("<br>Authors:  "
+            + jalview.bin.Cache
+                    .getDefault(
+                            "AUTHORNAMES",
+                            "Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton")
             + "<br>Development managed by The Barton Group, University of Dundee, Scotland, UK.<br>"
             + "<br>For help, see the FAQ at www.jalview.org and/or join the jalview-discuss@jalview.org mailing list"
             + "<br>If  you use Jalview, please cite:"
@@ -1611,7 +1639,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     source.viewport.gatherViewsHere = true;
     source.viewport.explodedPosition = source.getBounds();
     JInternalFrame[] frames = desktop.getAllFrames();
-    String viewId = source.viewport.sequenceSetID;
+    String viewId = source.viewport.getSequenceSetId();
 
     for (int t = 0; t < frames.length; t++)
     {
@@ -2085,7 +2113,6 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         }
       }
     }
-
   }
 
   /**