X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FJalview2XML_V1.java;h=52f61b121f35dbb2d01b257cc198b2c0ed2bb67b;hb=483e7163b1fb8d4bcb9393014816c944befce328;hp=3773a643bb25253fd96c44f780efe05c05bca563;hpb=227ee1c1c69c228b67d408a0a83ae51bf5811272;p=jalview.git diff --git a/src/jalview/gui/Jalview2XML_V1.java b/src/jalview/gui/Jalview2XML_V1.java index 3773a64..52f61b1 100755 --- a/src/jalview/gui/Jalview2XML_V1.java +++ b/src/jalview/gui/Jalview2XML_V1.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -20,6 +20,7 @@ */ package jalview.gui; +import jalview.analysis.Conservation; import jalview.binding.Annotation; import jalview.binding.AnnotationElement; import jalview.binding.Features; @@ -34,14 +35,18 @@ import jalview.binding.Setting; import jalview.binding.Tree; import jalview.binding.UserColours; import jalview.binding.Viewport; +import jalview.datamodel.PDBEntry; +import jalview.io.FileFormat; import jalview.schemes.ColourSchemeI; import jalview.schemes.ColourSchemeProperty; -import jalview.schemes.ResidueProperties; import jalview.structure.StructureSelectionManager; import jalview.util.MessageManager; import jalview.util.jarInputStreamProvider; +import jalview.viewmodel.seqfeatures.FeatureRendererSettings; import java.io.InputStreamReader; +import java.io.Reader; +import java.net.UnknownHostException; import java.util.Hashtable; import java.util.Vector; import java.util.jar.JarEntry; @@ -49,8 +54,6 @@ import java.util.jar.JarInputStream; import javax.swing.JOptionPane; -import org.exolab.castor.xml.IDResolver; - /** * DOCUMENT ME! * @@ -125,44 +128,39 @@ public class Jalview2XML_V1 jarentry = jin.getNextJarEntry(); } - class NoDescIDResolver implements IDResolver - { - public Object resolve(String idref) - { - System.out.println(idref + " used"); - return null; - } - } - if (jarentry != null) { - InputStreamReader in = new InputStreamReader(jin, "UTF-8"); - JalviewModel object = new JalviewModel(); + entryCount++; + if (jarentry.getName().endsWith(".xml")) + { + Reader in = new InputStreamReader(jin, "UTF-8"); + JalviewModel object = new JalviewModel(); - object = object.unmarshal(in); + object = object.unmarshal(in); - af = LoadFromObject(object, file); - entryCount++; + af = LoadFromObject(object, file); + } } + jin.close(); } while (jarentry != null); - } catch (final java.net.UnknownHostException ex) + } catch (final UnknownHostException ex) { ex.printStackTrace(); if (raiseGUI) { javax.swing.SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { System.err.println("Couldn't locate Jalview XML file : " + ex + "\n"); - JOptionPane.showInternalMessageDialog(Desktop.desktop, + JvOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager.formatMessage("label.couldnt_locate", - new String[] - { file }), MessageManager + new String[] { file }), MessageManager .getString("label.url_not_found"), - JOptionPane.WARNING_MESSAGE); + JvOptionPane.WARNING_MESSAGE); } }); } @@ -175,12 +173,16 @@ public class Jalview2XML_V1 { javax.swing.SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { - JOptionPane.showInternalMessageDialog(Desktop.desktop, - MessageManager.formatMessage("label.error_loading_file_params", new String[]{file}), MessageManager.getString("label.error_loading_jalview_file"), - JOptionPane.WARNING_MESSAGE); + JvOptionPane.showInternalMessageDialog(Desktop.desktop, + MessageManager.formatMessage( + "label.error_loading_file_params", new String[] + { file }), MessageManager + .getString("label.error_loading_jalview_file"), + JvOptionPane.WARNING_MESSAGE); } }); } @@ -239,7 +241,17 @@ public class Jalview2XML_V1 { jalview.datamodel.PDBEntry entry = new jalview.datamodel.PDBEntry(); entry.setId(ids[p].getId()); - entry.setType(ids[p].getType()); + if (ids[p].getType() != null) + { + if (ids[p].getType().equalsIgnoreCase("PDB")) + { + entry.setType(PDBEntry.Type.PDB); + } + else + { + entry.setType(PDBEntry.Type.FILE); + } + } al.getSequenceAt(i).getDatasetSequence().addPDBId(entry); StructureSelectionManager.getStructureSelectionManager( Desktop.instance).registerPDBEntry(entry); @@ -294,7 +306,7 @@ public class Jalview2XML_V1 AlignFrame af = new AlignFrame(al, view.getWidth(), view.getHeight()); - af.setFileName(file, "Jalview"); + af.setFileName(file, FileFormat.Jalview); for (int i = 0; i < JSEQ.length; i++) { @@ -336,8 +348,7 @@ public class Jalview2XML_V1 for (int s = 0; s < ids.length; s++) { - seqs.addElement(seqids - .elementAt(ids[s])); + seqs.addElement(seqids.elementAt(ids[s])); } jalview.datamodel.SequenceGroup sg = new jalview.datamodel.SequenceGroup( @@ -349,9 +360,8 @@ public class Jalview2XML_V1 if (groups[i].getConsThreshold() != 0) { - jalview.analysis.Conservation c = new jalview.analysis.Conservation( - "All", ResidueProperties.propHash, 3, - sg.getSequences(null), 0, sg.getWidth() - 1); + Conservation c = new Conservation("All", sg.getSequences(null), + 0, sg.getWidth() - 1); c.calculate(); c.verdict(false, 25); sg.cs.setConservation(c); @@ -370,15 +380,14 @@ public class Jalview2XML_V1 af.viewport.setColourText(view.getShowColourText()); af.viewport.setConservationSelected(view.getConservationSelected()); af.viewport.setShowJVSuffix(view.getShowFullId()); - af.viewport.setFont(new java.awt.Font(view.getFontName(), view - .getFontStyle(), view.getFontSize())); - af.alignPanel.fontChanged(); + af.viewport.setFont( + new java.awt.Font(view.getFontName(), view.getFontStyle(), view + .getFontSize()), true); af.viewport.setRenderGaps(view.getRenderGaps()); af.viewport.setWrapAlignment(view.getWrapAlignment()); - af.alignPanel.setWrapAlignment(view.getWrapAlignment()); - af.viewport.setShowAnnotation(view.getShowAnnotation()); - af.alignPanel.setAnnotationVisible(view.getShowAnnotation()); + + af.viewport.setShowAnnotation(view.isShowAnnotation()); af.viewport.setShowBoxes(view.getShowBoxes()); af.viewport.setShowText(view.getShowText()); @@ -404,6 +413,7 @@ public class Jalview2XML_V1 af.viewport.setGlobalColourScheme(cs); af.viewport.setColourAppliesToAllGroups(false); + af.alignPanel.updateLayout(); af.changeColour(cs); if (view.getConservationSelected() && cs != null) { @@ -411,29 +421,33 @@ public class Jalview2XML_V1 } af.viewport.setColourAppliesToAllGroups(true); - af.viewport.showSequenceFeatures = view.getShowSequenceFeatures(); + af.viewport.setShowSequenceFeatures(view.getShowSequenceFeatures()); if (jms.getFeatureSettings() != null) { - af.viewport.setFeaturesDisplayed(new Hashtable()); + Hashtable featuresDisplayed = new Hashtable(); + Hashtable featureColours = new Hashtable(); String[] renderOrder = new String[jms.getFeatureSettings() .getSettingCount()]; for (int fs = 0; fs < jms.getFeatureSettings().getSettingCount(); fs++) { Setting setting = jms.getFeatureSettings().getSetting(fs); - af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer().setColour( - setting.getType(), new java.awt.Color(setting.getColour())); + featureColours.put(setting.getType(), + new java.awt.Color(setting.getColour())); renderOrder[fs] = setting.getType(); if (setting.getDisplay()) { - af.viewport.getFeaturesDisplayed().put(setting.getType(), new Integer( - setting.getColour())); + featuresDisplayed.put(setting.getType(), + new Integer(setting.getColour())); } } - af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer().renderOrder = renderOrder; + FeatureRendererSettings frs = new FeatureRendererSettings( + renderOrder, new Hashtable(), featureColours, 1.0f, null); + af.alignPanel.getSeqPanel().seqCanvas.getFeatureRenderer() + .transferSettings(frs); } af.setMenusFromViewport(af.viewport);