X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FFeatureRenderer.java;h=a93cdcbf560a0e35daada06936b73dfc565761a4;hb=c9439f328825bc3061835f39c81a79920f50ef32;hp=fdc6700924c6f734557ddebeecd0e87482b2ca96;hpb=25aaaa87042b3f507ad4348120df7dd073182759;p=jalview.git diff --git a/src/jalview/appletgui/FeatureRenderer.java b/src/jalview/appletgui/FeatureRenderer.java index fdc6700..a93cdcb 100644 --- a/src/jalview/appletgui/FeatureRenderer.java +++ b/src/jalview/appletgui/FeatureRenderer.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1) - * 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,15 +20,29 @@ */ package jalview.appletgui; -import java.util.*; -import java.awt.*; -import java.awt.event.*; - -import jalview.datamodel.*; +import jalview.datamodel.SearchResults; +import jalview.datamodel.SequenceFeature; +import jalview.datamodel.SequenceI; import jalview.schemes.AnnotationColourGradient; import jalview.schemes.GraduatedColor; import jalview.util.MessageManager; -import jalview.viewmodel.seqfeatures.FeaturesDisplayed; +import jalview.viewmodel.AlignmentViewport; + +import java.awt.BorderLayout; +import java.awt.Button; +import java.awt.Choice; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Graphics; +import java.awt.GridLayout; +import java.awt.Label; +import java.awt.Panel; +import java.awt.ScrollPane; +import java.awt.TextArea; +import java.awt.TextField; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; /** * DOCUMENT ME! @@ -36,25 +50,19 @@ import jalview.viewmodel.seqfeatures.FeaturesDisplayed; * @author $author$ * @version $Revision$ */ -public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRenderer +public class FeatureRenderer extends + jalview.renderer.seqfeatures.FeatureRenderer { - - // Holds web links for feature groups and feature types - // in the form label|link - Hashtable featureLinks = null; - /** * Creates a new FeatureRenderer object. * * @param av * DOCUMENT ME! */ - public FeatureRenderer(AlignViewport av) + public FeatureRenderer(AlignmentViewport av) { super(); this.av = av; - - setTransparencyAvailable(!System.getProperty("java.version").startsWith("1.1")); } static String lastFeatureAdded; @@ -100,7 +108,9 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere } else { - throw new Error(MessageManager.getString("error.invalid_colour_for_mycheckbox")); + throw new Error( + MessageManager + .getString("error.invalid_colour_for_mycheckbox")); } if (col != null) { @@ -135,6 +145,7 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere super(null); } + @Override public void paint(Graphics g) { Dimension d = getSize(); @@ -197,7 +208,9 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere + "-" + features[i].getEnd(); if (features[i].getFeatureGroup() != null) + { item += " (" + features[i].getFeatureGroup() + ")"; + } overlaps.addItem(item); } @@ -206,6 +219,7 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere overlaps.addItemListener(new java.awt.event.ItemListener() { + @Override public void itemStateChanged(java.awt.event.ItemEvent e) { int index = overlaps.getSelectedIndex(); @@ -302,8 +316,10 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere } } - String title = newFeatures ? MessageManager.getString("label.create_new_sequence_features") - : MessageManager.formatMessage("label.amend_delete_features", new String[]{sequences[0].getName()}); + String title = newFeatures ? MessageManager + .getString("label.create_new_sequence_features") + : MessageManager.formatMessage("label.amend_delete_features", + new String[] { sequences[0].getName() }); final JVDialog dialog = new JVDialog(ap.alignFrame, title, true, 385, 240); @@ -321,6 +337,7 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere dialog.buttonPanel.add(deleteButton, 1); deleteButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent evt) { deleteFeature = true; @@ -334,12 +351,6 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere start.setText(features[0].getBegin() + ""); end.setText(features[0].getEnd() + ""); description.setText(features[0].getDescription()); - Color col = getColour(name.getText()); - if (col == null) - { - col = new jalview.schemes.UserColourScheme() - .createColourFromName(name.getText()); - } Object fcol = getFeatureStyle(name.getText()); // simply display the feature color in a box colourPanel.updateColor(fcol); @@ -347,6 +358,7 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere // TODO: render the graduated color in the box. colourPanel.addMouseListener(new java.awt.event.MouseAdapter() { + @Override public void mousePressed(java.awt.event.MouseEvent evt) { if (!colourPanel.isGcol) @@ -376,7 +388,9 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere } if (lastFeatureGroupAdded != null && lastFeatureGroupAdded.length() < 1) + { lastFeatureGroupAdded = null; + } if (!newFeatures) { @@ -401,7 +415,8 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere } ffile.parseDescriptionHTML(sf, false); - setVisible(lastFeatureAdded); // if user edited name then make sure new type is visible + setVisible(lastFeatureAdded); // if user edited name then make sure new + // type is visible } if (deleteFeature) { @@ -422,16 +437,16 @@ public class FeatureRenderer extends jalview.renderer.seqfeatures.FeatureRendere ffile.parseDescriptionHTML(features[i], false); } - col = colourPanel.getBackground(); + Color newColour = colourPanel.getBackground(); // setColour(lastFeatureAdded, fcol); if (lastFeatureGroupAdded != null) { setGroupVisibility(lastFeatureGroupAdded, true); } - setColour(lastFeatureAdded, fcol); + setColour(lastFeatureAdded, newColour); // was fcol setVisible(lastFeatureAdded); - findAllFeatures(false); // different to original applet behaviour ? + findAllFeatures(false); // different to original applet behaviour ? // findAllFeatures(); } else