X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fcontroller%2FAlignViewController.java;fp=src%2Fjalview%2Fcontroller%2FAlignViewController.java;h=3be32bb1e4a3e0f767415f5b6f0a5ec36b8140d7;hb=5882e58cfd12524e14fb6d84264a3ff63a4ff29d;hp=972b6ab43282f0ef9e913b452a146ba3ddbfbcae;hpb=f3b9ee1c57282a1233ffec89ec5aae39dc29d25f;p=jalview.git diff --git a/src/jalview/controller/AlignViewController.java b/src/jalview/controller/AlignViewController.java index 972b6ab..3be32bb 100644 --- a/src/jalview/controller/AlignViewController.java +++ b/src/jalview/controller/AlignViewController.java @@ -33,6 +33,7 @@ import jalview.datamodel.SequenceCollectionI; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; +import jalview.io.FeaturesFile; import jalview.util.MessageManager; import java.awt.Color; @@ -379,4 +380,38 @@ public class AlignViewController implements AlignViewControllerI { sortBy(typ, "Sort by Feature Score", AlignmentSorter.FEATURE_SCORE); } + + @Override + public boolean parseFeaturesFile(String file, String protocol, + boolean relaxedIdMatching) + { + boolean featuresFile = false; + try + { + featuresFile = new FeaturesFile(file, protocol).parse(viewport + .getAlignment().getDataset(), alignPanel.getFeatureRenderer() + .getFeatureColours(), false, relaxedIdMatching); + } catch (Exception ex) + { + ex.printStackTrace(); + } + + if (featuresFile) + { + avcg.refreshFeatureUI(true); + if (alignPanel.getFeatureRenderer() != null) + { + // update the min/max ranges where necessary + alignPanel.getFeatureRenderer().findAllFeatures(true); + } + if (avcg.getFeatureSettingsUI() != null) + { + avcg.getFeatureSettingsUI().discoverAllFeatureData(); + } + alignPanel.paintAlignment(true); + } + + return featuresFile; + + } }