From 81bac1eb59c69f6fa93ccae5ea698fa40a810bc8 Mon Sep 17 00:00:00 2001
From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04>
Date: Thu, 14 Apr 2011 09:44:45 +0000
Subject: [PATCH] load BAM/VCF using SwingWorker

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@15951 ee4ac58c-ac51-4696-9907-e4b3aa274f04
---
 .../sanger/artemis/components/EntryEdit.java  | 26 +++++++++++++------
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/uk/ac/sanger/artemis/components/EntryEdit.java b/uk/ac/sanger/artemis/components/EntryEdit.java
index a8fc8b031..d494c909c 100644
--- a/uk/ac/sanger/artemis/components/EntryEdit.java
+++ b/uk/ac/sanger/artemis/components/EntryEdit.java
@@ -484,11 +484,21 @@ public class EntryEdit extends JFrame
     
     if(System.getProperty("bam") != null)
     {
-      String ngs[] = System.getProperty("bam").split("[\\s,]");
-      FileSelectionDialog fileChooser = new FileSelectionDialog(ngs);
-      List<String> listBams = fileChooser.getFiles(".*\\.bam$");
-      List<String> vcfFiles = fileChooser.getFiles(VCFview.VCFFILE_SUFFIX);
-      loadBamAndVcf(listBams, vcfFiles);
+      SwingWorker worker = new SwingWorker()
+      {
+        public Object construct()
+        {
+          EntryEdit.this.setCursor(new Cursor(Cursor.WAIT_CURSOR));
+          String ngs[] = System.getProperty("bam").split("[\\s,]");
+          FileSelectionDialog fileChooser = new FileSelectionDialog(ngs);
+          List<String> listBams = fileChooser.getFiles(".*\\.bam$");
+          List<String> vcfFiles = fileChooser.getFiles(VCFview.VCFFILE_SUFFIX);
+          loadBamAndVcf(listBams, vcfFiles);
+          EntryEdit.this.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
+          return null;
+        }
+      };
+      worker.start();
     }
   }
 
@@ -1839,7 +1849,7 @@ public class EntryEdit extends JFrame
       bamPanel.removeAll();
       try
       {
-        bamView = new BamView(listBams, null, 2000, feature_display, 
+        bamView = new BamView(listBams, null, feature_display.getMaxVisibleBases(), feature_display, 
             getEntryGroup().getBases(), bamPanel, null);
       }
       catch (Exception ex)
@@ -1895,7 +1905,7 @@ public class EntryEdit extends JFrame
     {
       ngSplitPane.setVisible(true);
       lowerSplitPane.setDividerSize(3);
-      lowerSplitPane.setDividerLocation(0.4d);
+      lowerSplitPane.setDividerLocation(0.25d);
       
       ngSplitPane.setResizeWeight(0);
       ngSplitPane.setDividerSize(0);
@@ -1906,7 +1916,7 @@ public class EntryEdit extends JFrame
     {
       ngSplitPane.setVisible(true);
       lowerSplitPane.setDividerSize(3);
-      lowerSplitPane.setDividerLocation(0.4d);
+      lowerSplitPane.setDividerLocation(0.3d);
       
       ngSplitPane.setResizeWeight(1);
       ngSplitPane.setDividerSize(1);
-- 
GitLab