From 056ba8a2e4f4f5662ffb1f6231a216ae6e8811fb Mon Sep 17 00:00:00 2001
From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04>
Date: Fri, 23 Apr 2010 11:09:52 +0000
Subject: [PATCH] fix for search results in zipped file

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@13741 ee4ac58c-ac51-4696-9907-e4b3aa274f04
---
 uk/ac/sanger/artemis/components/SearchResultViewer.java | 8 +++++++-
 uk/ac/sanger/artemis/components/ViewMenu.java           | 2 +-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/uk/ac/sanger/artemis/components/SearchResultViewer.java b/uk/ac/sanger/artemis/components/SearchResultViewer.java
index ff26a5311..5c1f76d84 100644
--- a/uk/ac/sanger/artemis/components/SearchResultViewer.java
+++ b/uk/ac/sanger/artemis/components/SearchResultViewer.java
@@ -29,6 +29,7 @@ import uk.ac.sanger.artemis.ExternalProgram;
 import uk.ac.sanger.artemis.ExternalProgramException;
 import uk.ac.sanger.artemis.Options;
 import uk.ac.sanger.artemis.util.Document;
+import uk.ac.sanger.artemis.util.ZipFileDocument;
 
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -83,9 +84,14 @@ public class SearchResultViewer extends FileViewer
     {
       public void actionPerformed(ActionEvent event) 
       {
+        String fileName = document.toString();
         try 
         {
-          sendToBrowser(document.toString());
+          if(document instanceof ZipFileDocument)
+            fileName = ((ZipFileDocument)document).writeTmpFile(
+                SearchResultViewer.this.getText());
+          
+          sendToBrowser(fileName);
         }
         catch (IOException e) 
         {
diff --git a/uk/ac/sanger/artemis/components/ViewMenu.java b/uk/ac/sanger/artemis/components/ViewMenu.java
index 4572ddc30..9b9c51340 100644
--- a/uk/ac/sanger/artemis/components/ViewMenu.java
+++ b/uk/ac/sanger/artemis/components/ViewMenu.java
@@ -1463,7 +1463,7 @@ public class ViewMenu extends SelectionMenu
           else
           {
             new SearchResultViewer(program_name + " results for "
-                + this_feature.getIDString() + " from " + document, document);
+                + this_feature.getIDString() + " from " + document.getName(), document);
           }
         }
         catch(ExternalProgramException e)
-- 
GitLab