Check if user cancelled before making image
[jalview.git] / src / jalview / io / JalviewFileChooser.java
index d5ac106..2bac0de 100755 (executable)
@@ -22,25 +22,7 @@ package jalview.io;
 \r
 import java.io.*;\r
 import java.awt.*;\r
-import java.awt.event.*;\r
-import java.util.*;\r
-import java.util.List;\r
-\r
 import javax.swing.*;\r
-import javax.swing.event.TableModelEvent;\r
-import javax.swing.event.TableModelListener;\r
-import javax.swing.table.*;\r
-import java.util.*;\r
-\r
-import java.awt.*;\r
-import java.awt.event.*;\r
-import javax.swing.*;\r
-import javax.swing.plaf.*;\r
-import javax.swing.plaf.basic.*;\r
-import javax.swing.plaf.metal.*;\r
-import javax.swing.table.*;\r
-import javax.swing.event.*;\r
-import java.text.*;\r
 \r
 public class JalviewFileChooser\r
     extends JFileChooser\r
@@ -79,35 +61,44 @@ public class JalviewFileChooser
   {\r
     super.setFileFilter(filter);\r
 \r
-    if (! (getUI() instanceof BasicFileChooserUI))\r
-    {\r
-      return;\r
-    }\r
-\r
-    final BasicFileChooserUI ui = (BasicFileChooserUI) getUI();\r
-    final String name = ui.getFileName().trim();\r
-\r
-    if ( (name == null) || (name.length() == 0))\r
-    {\r
-      return;\r
-    }\r
-\r
-    EventQueue.invokeLater(new Thread()\r
-    {\r
-      public void run()\r
+    try{\r
+      if(getUI() instanceof javax.swing.plaf.basic.BasicFileChooserUI)\r
       {\r
-        String currentName = ui.getFileName();\r
-        if ( (currentName == null) || (currentName.length() == 0))\r
+        final javax.swing.plaf.basic.BasicFileChooserUI ui = (javax.swing.plaf.\r
+            basic.BasicFileChooserUI) getUI();\r
+        final String name = ui.getFileName().trim();\r
+\r
+        if ( (name == null) || (name.length() == 0))\r
         {\r
-          ui.setFileName(name);\r
+          return;\r
         }\r
+\r
+        EventQueue.invokeLater(new Thread()\r
+        {\r
+          public void run()\r
+          {\r
+            String currentName = ui.getFileName();\r
+            if ( (currentName == null) || (currentName.length() == 0))\r
+            {\r
+              ui.setFileName(name);\r
+            }\r
+          }\r
+        });\r
       }\r
-    });\r
+    }catch(Exception ex)\r
+    {\r
+      // Some platforms do not have BasicFileChooserUI\r
+    }\r
   }\r
 \r
 \r
   public String getSelectedFormat()\r
   {\r
+    if(getFileFilter()==null)\r
+    {\r
+      return null;\r
+    }\r
+\r
     String format = getFileFilter().getDescription();\r
 \r
     if (format.toUpperCase().startsWith("JALVIEW"))\r
@@ -171,7 +162,7 @@ public class JalviewFileChooser
 \r
       if (confirm != JOptionPane.YES_OPTION)\r
       {\r
-        ret = this.CANCEL_OPTION;\r
+        ret = JalviewFileChooser.CANCEL_OPTION;\r
       }\r
     }\r
 \r