Prepare for launchFullApplication
authoramwaterhouse <Andrew Waterhouse>
Fri, 7 Jul 2006 12:58:26 +0000 (12:58 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 7 Jul 2006 12:58:26 +0000 (12:58 +0000)
src/jalview/appletgui/AlignFrame.java

index a68c797..93f48ee 100755 (executable)
@@ -59,6 +59,8 @@ public class AlignFrame extends Frame implements ActionListener,
 \r
     annotationPanelMenuItem.setState(viewport.showAnnotation);\r
 \r
+    seqLimits.setState(viewport.showJVSuffix);\r
+\r
     if(applet!=null)\r
     {\r
       String param = applet.getParameter("sortBy");\r
@@ -198,7 +200,7 @@ public class AlignFrame extends Frame implements ActionListener,
         }\r
         break;\r
       case KeyEvent.VK_C:\r
-        if (viewport.cursorMode)\r
+        if (viewport.cursorMode && !evt.isControlDown())\r
         {\r
           alignPanel.seqPanel.setCursorColumn();\r
         }\r
@@ -371,6 +373,8 @@ public void itemStateChanged(ItemEvent evt)
       inputText_actionPerformed();\r
     else if(evt.getSource()==loadTree)\r
       loadTree_actionPerformed();\r
+    else if(evt.getSource()==loadApplication)\r
+      launchFullApplication();\r
     else if(evt.getSource()==closeMenuItem)\r
       closeMenuItem_actionPerformed();\r
     else if(evt.getSource()==copy)\r
@@ -501,6 +505,63 @@ public void itemStateChanged(ItemEvent evt)
                                                       viewport.showJVSuffix));\r
   }\r
 \r
+  void launchFullApplication()\r
+  {\r
+    StringBuffer url = new StringBuffer("http://bug.compbio.dundee.ac.uk:8080/Jalview/jalview?");\r
+\r
+    url.append("open="+\r
+               appendProtocol( applet.getParameter("file") ) );\r
+\r
+    if(applet.getParameter("features")!=null)\r
+    {\r
+      url.append( "&features=" );\r
+      url.append( appendProtocol( applet.getParameter("features") ) );\r
+    }\r
+\r
+    if(applet.getParameter("defaultColour")!=null)\r
+    {\r
+      url.append("&colour=" +\r
+                 removeWhiteSpace(applet.getParameter("defaultColour"))\r
+          );\r
+    }\r
+\r
+    if(applet.getParameter("userDefinedColour")!=null)\r
+    {\r
+      url.append( "&colour=" +\r
+                 removeWhiteSpace( applet.getParameter("userDefinedColour") )\r
+         );\r
+    }\r
+\r
+    showURL(url.toString(), "FULL_APP");\r
+  }\r
+\r
+\r
+  String removeWhiteSpace(String colour)\r
+  {\r
+    StringBuffer sb = new StringBuffer();\r
+    for (int i = 0; i < colour.length(); i++)\r
+    {\r
+      if (Character.isWhitespace(colour.charAt(i)))\r
+        sb.append("%20");\r
+      else\r
+        sb.append(colour.charAt(i));\r
+    }\r
+\r
+    return sb.toString();\r
+  }\r
+\r
+\r
+  String appendProtocol(String url)\r
+  {\r
+    try{\r
+       new URL(url);\r
+    }catch(java.net.MalformedURLException ex)\r
+    {\r
+      url = applet.getCodeBase()+url;\r
+    }\r
+    return url;\r
+  }\r
+\r
   public void closeMenuItem_actionPerformed()\r
   {\r
     PaintRefresher.components.remove(viewport.alignment);\r
@@ -1463,12 +1524,7 @@ public void itemStateChanged(ItemEvent evt)
 \r
   public void removeRedundancyMenuItem_actionPerformed()\r
   {\r
-    RedundancyPanel sp = new RedundancyPanel(alignPanel);\r
-    Frame frame = new Frame();\r
-    frame.add(sp);\r
-    jalview.bin.JalviewLite.addFrame(frame, "Redundancy threshold selection",\r
-                                     400, 120);\r
-\r
+     new RedundancyPanel(alignPanel);\r
   }\r
 \r
   public void pairwiseAlignmentMenuItem_actionPerformed()\r
@@ -1583,8 +1639,6 @@ public void itemStateChanged(ItemEvent evt)
 \r
   void loadTree_actionPerformed()\r
   {\r
-    TreePanel tp = null;\r
-\r
       CutAndPasteTransfer cap = new CutAndPasteTransfer(true, this);\r
       cap.setText("Paste your Newick tree file here.");\r
       cap.treeImport = true;\r
@@ -1706,6 +1760,7 @@ public void itemStateChanged(ItemEvent evt)
     {\r
       try\r
       {\r
+        System.out.println("Show url: "+url);\r
         applet.getAppletContext().showDocument(new java.net.URL(url),\r
                                                target);\r
       }\r
@@ -1722,6 +1777,7 @@ public void itemStateChanged(ItemEvent evt)
 \r
     protected MenuBar alignFrameMenuBar = new MenuBar();\r
     protected Menu fileMenu = new Menu("File");\r
+    protected MenuItem loadApplication = new MenuItem("View in Full Application");\r
     protected MenuItem loadTree = new MenuItem("Load Associated Tree");\r
     protected MenuItem closeMenuItem = new MenuItem("Close");\r
     protected Menu editMenu = new Menu("Edit");\r
@@ -1832,6 +1888,7 @@ public void itemStateChanged(ItemEvent evt)
         outputTextboxMenu.add(item);\r
       }\r
         closeMenuItem.addActionListener(this);\r
+        loadApplication.addActionListener(this);\r
 \r
         loadTree.addActionListener(this);\r
         selectAllSequenceMenuItem.addActionListener(this);\r
@@ -1997,6 +2054,7 @@ public void itemStateChanged(ItemEvent evt)
         alignFrameMenuBar.add(helpMenu);\r
         fileMenu.add(inputText);\r
         fileMenu.add(outputTextboxMenu);\r
+       // fileMenu.add(loadApplication);\r
         fileMenu.addSeparator();\r
         fileMenu.add(loadTree);\r
         fileMenu.add(closeMenuItem);\r
@@ -2127,7 +2185,7 @@ public void itemStateChanged(ItemEvent evt)
 \r
    // setVisible(false);\r
     fileMenu.remove(closeMenuItem);\r
-    fileMenu.remove(2); // Seperator\r
+    fileMenu.remove(3); // Seperator\r
 \r
     applet.setLayout(new BorderLayout());\r
     applet.add(embeddedMenu, BorderLayout.NORTH);\r