Fix for local sources with no capabilities
authoramwaterhouse <Andrew Waterhouse>
Wed, 9 Aug 2006 15:56:05 +0000 (15:56 +0000)
committeramwaterhouse <Andrew Waterhouse>
Wed, 9 Aug 2006 15:56:05 +0000 (15:56 +0000)
src/jalview/gui/DasSourceBrowser.java

index e8109c7..6388e07 100755 (executable)
@@ -41,6 +41,7 @@ public class DasSourceBrowser extends GDasSourceBrowser
 \r
   Vector selectedSources;\r
 \r
+\r
   public DasSourceBrowser()\r
   {\r
     registryURL.setText(jalview.bin.Cache.getDefault("DAS_REGISTRY_URL",\r
@@ -61,10 +62,6 @@ public class DasSourceBrowser extends GDasSourceBrowser
     {\r
       public void valueChanged(ListSelectionEvent e)\r
       {\r
-        //Ignore extra messages.\r
-        if (e.getValueIsAdjusting())\r
-          return;\r
-\r
         ListSelectionModel lsm = (ListSelectionModel) e.getSource();\r
         if (!lsm.isSelectionEmpty())\r
         {\r
@@ -240,7 +237,6 @@ public class DasSourceBrowser extends GDasSourceBrowser
 \r
   public void run()\r
   {\r
-\r
     addLocal.setVisible(false);\r
     refresh.setVisible(false);\r
     progressBar.setVisible(true);\r
@@ -251,6 +247,7 @@ public class DasSourceBrowser extends GDasSourceBrowser
     appendLocalSources();\r
 \r
     init();\r
+\r
   }\r
 \r
   public Vector getSelectedSources()\r
@@ -549,23 +546,26 @@ public class DasSourceBrowser extends GDasSourceBrowser
         index++;\r
       }\r
 \r
-         dasSources = tmp;\r
+      dasSources = tmp;\r
 \r
-         refreshTableData(data);\r
+      refreshTableData(data);\r
   }\r
 \r
   public void valueChanged(ListSelectionEvent evt)\r
   {\r
     //Called when the MainTable selection changes\r
-    if (evt.getValueIsAdjusting())\r
+    if (evt.getValueIsAdjusting() )\r
     {\r
       return;\r
     }\r
 \r
+\r
     displayFullDetails(null);\r
 \r
     // Filter the displayed data sources\r
     int dSize = dasSources.length;\r
+\r
+\r
     ArrayList names = new ArrayList();\r
     ArrayList selected = new ArrayList();\r
     DasSource ds;\r
@@ -575,10 +575,25 @@ public class DasSourceBrowser extends GDasSourceBrowser
     //July 2006 - only 6 sources fo not serve features\r
     Object [] dummyFeatureList = new Object[]{"features"};\r
 \r
-    // capabilities.get\r
     for (int i = 0; i < dSize; i++)\r
     {\r
       ds = dasSources[i];\r
+      DasCoordinateSystem[] dcs = ds.getCoordinateSystem();\r
+\r
+      if (dcs.length == 0 && ds.getCapabilities().length == 0\r
+          && filter1.getSelectedIndex() == 0\r
+          && filter2.getSelectedIndex() == 0\r
+          && filter3.getSelectedIndex() == 0)\r
+      {\r
+        //THIS IS A FIX FOR LOCAL SOURCES WHICH DO NOT\r
+        //HAVE COORDINATE SYSTEMS, INFO WHICH AT PRESENT\r
+        //IS ADDED FROM THE REGISTRY\r
+        names.add(ds.getNickname());\r
+        selected.add(new Boolean(\r
+              selectedSources.contains(ds.getNickname())));\r
+        continue;\r
+      }\r
+\r
 \r
       if (!selectedInList(dummyFeatureList, ds.getCapabilities())\r
       ||  !selectedInList(filter3.getSelectedValues(),\r
@@ -587,12 +602,9 @@ public class DasSourceBrowser extends GDasSourceBrowser
         continue;\r
       }\r
 \r
-      DasCoordinateSystem[] dcs = ds.getCoordinateSystem();\r
       for (int j = 0; j < dcs.length; j++)\r
       {\r
-        if (selectedInList(dummyFeatureList,ds.getCapabilities())\r
-        &&\r
-            selectedInList(filter1.getSelectedValues(),\r
+        if (   selectedInList(filter1.getSelectedValues(),\r
                            new String[]\r
                            {dcs[j].getName()})\r
             && selectedInList(filter2.getSelectedValues(),\r
@@ -622,7 +634,7 @@ public class DasSourceBrowser extends GDasSourceBrowser
   {\r
     for (int i = 0; i < selection.length; i++)\r
     {\r
-      if (selection[i].equals("Any"))\r
+      if (selection[i].equals("Any") )\r
         return true;\r
 \r
       for (int j = 0; j < items.length; j++)\r