+ public void gatherViews(AlignFrame source)
+ {
+ source.viewport.gatherViewsHere = true;
+ source.viewport.explodedPosition = source.getBounds();
+ JInternalFrame[] frames = desktop.getAllFrames();
+ String viewId = source.viewport.sequenceSetID;
+
+ for (int t = 0; t < frames.length; t++)
+ {
+ if (frames[t] instanceof AlignFrame && frames[t] != source)
+ {
+ AlignFrame af = (AlignFrame) frames[t];
+ boolean gatherThis = false;
+ for (int a = 0; a < af.alignPanels.size(); a++)
+ {
+ AlignmentPanel ap = (AlignmentPanel) af.alignPanels.elementAt(a);
+ if (viewId.equals(ap.av.getSequenceSetId()))
+ {
+ gatherThis = true;
+ ap.av.gatherViewsHere = false;
+ ap.av.explodedPosition = af.getBounds();
+ source.addAlignmentPanel(ap, false);
+ }
+ }
+
+ if (gatherThis)
+ {
+ af.alignPanels.clear();
+ af.closeMenuItem_actionPerformed(true);
+ }
+ }
+ }
+
+ }
+
+ jalview.gui.VamsasClient v_client=null;
+ public void vamsasLoad_actionPerformed(ActionEvent e)
+ {
+ if (v_client==null) {
+ // Start a session.
+ JalviewFileChooser chooser = new JalviewFileChooser(jalview.bin.Cache.
+ getProperty("LAST_DIRECTORY"));
+
+ chooser.setFileView(new JalviewFileView());
+ chooser.setDialogTitle("Load Vamsas file");
+ chooser.setToolTipText("Import");
+
+ int value = chooser.showOpenDialog(this);
+
+ if (value == JalviewFileChooser.APPROVE_OPTION)
+ {
+ v_client = new jalview.gui.VamsasClient(this,
+ chooser.getSelectedFile());
+ this.vamsasLoad.setText("Session Update");
+ this.vamsasStop.setVisible(true);
+ v_client.initial_update();
+ v_client.startWatcher();
+ }
+ } else {
+ // store current data in session.
+ v_client.push_update();
+ }
+ }
+ public void vamsasStop_actionPerformed(ActionEvent e) {
+ if (v_client!=null) {
+ v_client.end_session();
+ v_client=null;
+ this.vamsasStop.setVisible(false);
+ this.vamsasLoad.setText("Start Vamsas Session...");
+ }
+ }
+ /**
+ * hide vamsas user gui bits when a vamsas document event is being handled.
+ * @param b true to hide gui, false to reveal gui
+ */
+ public void setVamsasUpdate(boolean b) {
+ jalview.bin.Cache.log.debug("Setting gui for Vamsas update "+(b ? "in progress" : "finished"));
+ vamsasLoad.setVisible(!b);
+ vamsasStop.setVisible(!b);
+
+ }