JAL-2944 ’new view’ and ‘add to view’ button rather than selecting from combo box...
[jalview.git] / src / jalview / gui / StructureChooser.java
index 1b69989..cd1cfc3 100644 (file)
@@ -142,13 +142,11 @@ public class StructureChooser extends GStructureChooser
     if (Desktop.instance != null)
     {
       targetView.removeAllItems();
-      targetView.addItem(
-              new StructureViewer(ap.getStructureSelectionManager()));
       if (lastTargetedView != null && !lastTargetedView.isVisible())
       {
         lastTargetedView = null;
       }
-      int linkedViewsAt = 1;
+      int linkedViewsAt = 0;
       for (StructureViewerBase view : Desktop.instance
               .getStructureViewers(null, null))
       {
@@ -166,12 +164,16 @@ public class StructureChooser extends GStructureChooser
           targetView.addItem(viewHandler);
         }
       }
-      targetView.setVisible(targetView.getItemCount() > 1);
-
-      // finally, restore last targeted view by default.
-      if (lastTargetedView != null)
-      {
-        targetView.setSelectedItem(lastTargetedView);
+      targetView.setVisible(targetView.getItemCount() > 0);
+      btn_view.setVisible(targetView.isVisible());
+      if (targetView.isVisible()) {
+        // finally, restore last targeted view by default.
+        if (lastTargetedView != null)
+        {
+          targetView.setSelectedItem(lastTargetedView);
+        } else {
+          targetView.setSelectedIndex(0);
+        }
       }
     }
   }
@@ -817,7 +819,17 @@ public class StructureChooser extends GStructureChooser
    * Handles action event for btn_ok
    */
   @Override
-  public void ok_ActionPerformed()
+  public void newview_ActionPerformed()
+  {
+    targetView.setSelectedItem(null);
+    showStructures(false);
+  }
+
+  /**
+   * Handles action event for btn_ok
+   */
+  @Override
+  public void view_ActionPerformed()
   {
     showStructures(false);
   }