X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAPopupMenu.java;h=8fd317abaecb80991b8ec175dd4672e741d01f4c;hb=refs%2Fheads%2Ffeatures%2FJAL-2316;hp=863d625312abcb73eaf90c5d4a2f1834815a0ec7;hpb=78ca38e25791832308bf179d91a41c352d305f4c;p=jalview.git diff --git a/src/jalview/appletgui/APopupMenu.java b/src/jalview/appletgui/APopupMenu.java index 863d625..8fd317a 100644 --- a/src/jalview/appletgui/APopupMenu.java +++ b/src/jalview/appletgui/APopupMenu.java @@ -39,10 +39,11 @@ import jalview.io.DataSourceType; import jalview.io.FileFormatI; import jalview.io.FileFormats; import jalview.io.SequenceAnnotationReport; +import jalview.renderer.ResidueShader; +import jalview.renderer.ResidueShaderI; import jalview.schemes.Blosum62ColourScheme; import jalview.schemes.BuriedColourScheme; import jalview.schemes.ClustalxColourScheme; -import jalview.schemes.ColourSchemeI; import jalview.schemes.HelixColourScheme; import jalview.schemes.HydrophobicColourScheme; import jalview.schemes.JalviewColourScheme; @@ -209,7 +210,7 @@ public class APopupMenu extends java.awt.PopupMenu implements Menu menu1 = new Menu(); public APopupMenu(AlignmentPanel apanel, final SequenceI seq, - Vector links) + List links) { // ///////////////////////////////////////////////////////// // If this is activated from the sequence panel, the user may want to @@ -242,6 +243,24 @@ public class APopupMenu extends java.awt.PopupMenu implements SequenceGroup sg = ap.av.getSelectionGroup(); if (sg != null && sg.getSize() > 0) { + if (sg.isNucleotide()) + { + conservationColour.setEnabled(false); + clustalColour.setEnabled(false); + BLOSUM62Colour.setEnabled(false); + zappoColour.setEnabled(false); + taylorColour.setEnabled(false); + hydrophobicityColour.setEnabled(false); + helixColour.setEnabled(false); + strandColour.setEnabled(false); + turnColour.setEnabled(false); + buriedColour.setEnabled(false); + } + else + { + purinePyrimidineColour.setEnabled(false); + nucleotideColour.setEnabled(false); + } editGroupName.setLabel(MessageManager.formatMessage( "label.name_param", new Object[] { sg.getName() })); showText.setState(sg.getDisplayText()); @@ -329,20 +348,21 @@ public class APopupMenu extends java.awt.PopupMenu implements * * @param cs */ - protected void setSelectedColour(ColourSchemeI cs) + protected void setSelectedColour(ResidueShaderI cs) { - if (cs == null) + if (cs == null || cs.getColourScheme() == null) { noColour.setState(true); } else { + String name = cs.getColourScheme().getSchemeName(); for (int i = 0; i < colourMenu.getItemCount(); i++) { MenuItem item = colourMenu.getItem(i); if (item instanceof CheckboxMenuItem) { - if (cs.getSchemeName().equals(item.getName())) + if (name.equals(item.getName())) { ((CheckboxMenuItem) item).setState(true); } @@ -565,7 +585,7 @@ public class APopupMenu extends java.awt.PopupMenu implements { BLOSUM62Colour_actionPerformed(); } - else if (source == PIDColour) + else if (evt.getSource() == PIDColour) { PIDColour_actionPerformed(); } @@ -958,6 +978,8 @@ public class APopupMenu extends java.awt.PopupMenu implements .getString("action.create_group")); createGroupMenuItem.addActionListener(this); + modifyPID.setEnabled(abovePIDColour.getState()); + modifyConservation.setEnabled(conservationColour.getState()); colourMenu.setLabel(MessageManager.getString("label.group_colour")); showBoxes.setLabel(MessageManager.getString("action.boxes")); showBoxes.setState(true); @@ -1143,61 +1165,63 @@ public class APopupMenu extends java.awt.PopupMenu implements protected void clustalColour_actionPerformed() { SequenceGroup sg = getGroup(); - sg.cs = new ClustalxColourScheme(sg, ap.av.getHiddenRepSequences()); + sg.cs = new ResidueShader(new ClustalxColourScheme(sg, + ap.av.getHiddenRepSequences())); refresh(); } protected void zappoColour_actionPerformed() { - getGroup().cs = new ZappoColourScheme(); + getGroup().cs = new ResidueShader(new ZappoColourScheme()); refresh(); } protected void taylorColour_actionPerformed() { - getGroup().cs = new TaylorColourScheme(); + getGroup().cs = new ResidueShader(new TaylorColourScheme()); refresh(); } protected void hydrophobicityColour_actionPerformed() { - getGroup().cs = new HydrophobicColourScheme(); + getGroup().cs = new ResidueShader(new HydrophobicColourScheme()); refresh(); } protected void helixColour_actionPerformed() { - getGroup().cs = new HelixColourScheme(); + getGroup().cs = new ResidueShader(new HelixColourScheme()); refresh(); } protected void strandColour_actionPerformed() { - getGroup().cs = new StrandColourScheme(); + getGroup().cs = new ResidueShader(new StrandColourScheme()); refresh(); } protected void turnColour_actionPerformed() { - getGroup().cs = new TurnColourScheme(); + getGroup().cs = new ResidueShader(new TurnColourScheme()); refresh(); } protected void buriedColour_actionPerformed() { - getGroup().cs = new BuriedColourScheme(); + getGroup().cs = new ResidueShader(new BuriedColourScheme()); refresh(); } public void nucleotideMenuItem_actionPerformed() { - getGroup().cs = new NucleotideColourScheme(); + getGroup().cs = new ResidueShader(new NucleotideColourScheme()); refresh(); } public void purinePyrimidineColour_actionPerformed() { - getGroup().cs = new PurinePyrimidineColourScheme(); + getGroup().cs = new ResidueShader( + new PurinePyrimidineColourScheme()); refresh(); } @@ -1239,7 +1263,7 @@ public class APopupMenu extends java.awt.PopupMenu implements protected void PIDColour_actionPerformed() { SequenceGroup sg = getGroup(); - sg.cs = new PIDColourScheme(); + sg.cs = new ResidueShader(new PIDColourScheme()); sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(ap.av .getHiddenRepSequences()), 0, ap.av.getAlignment().getWidth())); refresh(); @@ -1249,7 +1273,7 @@ public class APopupMenu extends java.awt.PopupMenu implements { SequenceGroup sg = getGroup(); - sg.cs = new Blosum62ColourScheme(); + sg.cs = new ResidueShader(new Blosum62ColourScheme()); sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(ap.av .getHiddenRepSequences()), 0, ap.av.getAlignment().getWidth())); @@ -1273,10 +1297,12 @@ public class APopupMenu extends java.awt.PopupMenu implements if (conservationColour.getState()) { - sg.cs.setConservation(Conservation.calculateConservation("Group", sg + Conservation conservation = Conservation.calculateConservation( + "Group", sg .getSequences(ap.av.getHiddenRepSequences()), 0, ap.av .getAlignment().getWidth(), false, ap.av.getConsPercGaps(), - false)); + false); + sg.getGroupColourScheme().setConservation(conservation); SliderPanel.setConservationSlider(ap, sg.cs, sg.getName()); SliderPanel.showConservationSlider(); }