X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAPopupMenu.java;h=c90af984025276dc36a318d75c90791cbfdb79b0;hb=b321b54427b86297419763808dda86e9b10e7a00;hp=80006c2f5b051e1bdf8f3483c7d847e996a3ddbe;hpb=ef23c17739a6fba3a8d455b725782bce4607ac9f;p=jalview.git diff --git a/src/jalview/appletgui/APopupMenu.java b/src/jalview/appletgui/APopupMenu.java index 80006c2..c90af98 100755 --- a/src/jalview/appletgui/APopupMenu.java +++ b/src/jalview/appletgui/APopupMenu.java @@ -28,7 +28,7 @@ import jalview.datamodel.*; import jalview.schemes.*; public class APopupMenu - extends java.awt.PopupMenu + extends java.awt.PopupMenu implements ActionListener, ItemListener { Menu groupMenu = new Menu(); protected MenuItem clustalColour = new MenuItem(); @@ -46,7 +46,7 @@ public class APopupMenu MenuItem noColourmenuItem = new MenuItem(); protected CheckboxMenuItem conservationMenuItem = new CheckboxMenuItem(); - AlignmentPanel ap; + final AlignmentPanel ap; MenuItem unGroupMenuItem = new MenuItem(); MenuItem nucleotideMenuItem = new MenuItem(); Menu colourMenu = new Menu(); @@ -54,7 +54,7 @@ public class APopupMenu CheckboxMenuItem showText = new CheckboxMenuItem(); CheckboxMenuItem showColourText = new CheckboxMenuItem(); - public APopupMenu(AlignmentPanel ap, Sequence seq, Vector links) + public APopupMenu(AlignmentPanel apanel, final Sequence seq, Vector links) { /////////////////////////////////////////////////////////// // If this is activated from the sequence panel, the user may want to @@ -63,7 +63,7 @@ public class APopupMenu // If from the IDPanel, we must display the sequence menu ////////////////////////////////////////////////////////// - this.ap = ap; + this.ap = apanel; try { @@ -97,23 +97,98 @@ public class APopupMenu link = links.elementAt(i).toString(); final String target = link.substring(0, link.indexOf("|")); item = new MenuItem(target); + String id = seq.getName(); + if(id.indexOf("|")>-1) + id = id.substring(id.lastIndexOf("|")+1); + final String url = link.substring(link.indexOf("|")+1, link.indexOf("$SEQUENCE_ID$")) - + seq.getName() + + + id + link.substring(link.indexOf("$SEQUENCE_ID$") + 13); item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { - jalview.bin.JalviewLite.showURL(url, target); + ap.alignFrame.showURL(url, target); } }); linkMenu.add(item); } add(linkMenu); + + item = new MenuItem("Show PDB Structure"); + item.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + addPDB(seq); + } + }); + + add(item); + + } } + public void itemStateChanged(ItemEvent evt) + { + if(evt.getSource()==abovePIDColour) + abovePIDColour_itemStateChanged(); + else if(evt.getSource()==showColourText) + showColourText_itemStateChanged(); + else if(evt.getSource()==showText) + showText_itemStateChanged(); + else if(evt.getSource()==showBoxes) + showBoxes_itemStateChanged() ; + } + + public void actionPerformed(ActionEvent evt) + { + if(evt.getSource()==clustalColour) + clustalColour_actionPerformed(); + else if(evt.getSource()==zappoColour) + zappoColour_actionPerformed(); + else if(evt.getSource()==taylorColour) + taylorColour_actionPerformed(); + else if(evt.getSource()==hydrophobicityColour) + hydrophobicityColour_actionPerformed(); + else if(evt.getSource()==helixColour) + helixColour_actionPerformed(); + else if(evt.getSource()==strandColour) + strandColour_actionPerformed(); + else if(evt.getSource()==clustalColour) + turnColour_actionPerformed(); + else if(evt.getSource()==buriedColour) + buriedColour_actionPerformed(); + else if(evt.getSource()==nucleotideMenuItem) + nucleotideMenuItem_actionPerformed(); + + else if(evt.getSource()==userDefinedColour) + userDefinedColour_actionPerformed(); + else if(evt.getSource()==PIDColour) + PIDColour_actionPerformed(); + else if(evt.getSource()==BLOSUM62Colour) + BLOSUM62Colour_actionPerformed(); + else if(evt.getSource()==noColourmenuItem) + noColourmenuItem_actionPerformed(); + else if(evt.getSource()==conservationMenuItem) + conservationMenuItem_itemStateChanged(); + else if(evt.getSource()==unGroupMenuItem) + unGroupMenuItem_actionPerformed(); + + } + + void addPDB(Sequence seq) + { + CutAndPasteTransfer cap = new CutAndPasteTransfer(true, ap.alignFrame.applet); + cap.setText("Paste your PDB file here."); + cap.setPDBImport(seq, ap.seqPanel.seqCanvas); + Frame frame = new Frame(); + frame.add(cap); + jalview.bin.JalviewLite.addFrame(frame, "Paste PDB file ", 400, 300); + } + private void jbInit() throws Exception { @@ -121,63 +196,21 @@ public class APopupMenu groupMenu.setLabel("Define"); unGroupMenuItem.setLabel("Remove Group"); - unGroupMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - unGroupMenuItem_actionPerformed(e); - } - }); + unGroupMenuItem.addActionListener(this); nucleotideMenuItem.setLabel("Nucleotide"); - nucleotideMenuItem.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - nucleotideMenuItem_actionPerformed(e); - } - }); - conservationMenuItem.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - conservationMenuItem_itemStateChanged(itemEvent); - } - }); - abovePIDColour.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - abovePIDColour_itemStateChanged(itemEvent); - } - }); + nucleotideMenuItem.addActionListener(this); + conservationMenuItem.addItemListener(this); + abovePIDColour.addItemListener(this); colourMenu.setLabel("Group Colour"); showBoxes.setLabel("Boxes"); showBoxes.setState(true); - showBoxes.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - showBoxes_itemStateChanged(itemEvent); - } - }); + showBoxes.addItemListener(this); showText.setLabel("Text"); - showText.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - showText_itemStateChanged(itemEvent); - } - }); + showText.addItemListener(this); showColourText.setLabel("Colour Text"); - showColourText.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - showColourText_itemStateChanged(itemEvent); - } - }); + showColourText.addItemListener(this); add(groupMenu); groupMenu.add(unGroupMenuItem); @@ -204,104 +237,32 @@ public class APopupMenu colourMenu.add(conservationMenuItem); noColourmenuItem.setLabel("None"); - noColourmenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - noColourmenuItem_actionPerformed(e); - } - }); + noColourmenuItem.addActionListener(this); clustalColour.setLabel("Clustalx colours"); - clustalColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - clustalColour_actionPerformed(e); - } - }); + clustalColour.addActionListener(this); zappoColour.setLabel("Zappo"); - zappoColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - zappoColour_actionPerformed(e); - } - }); + zappoColour.addActionListener(this); taylorColour.setLabel("Taylor"); - taylorColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - taylorColour_actionPerformed(e); - } - }); + taylorColour.addActionListener(this); hydrophobicityColour.setLabel("Hydrophobicity"); - hydrophobicityColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - hydrophobicityColour_actionPerformed(e); - } - }); + hydrophobicityColour.addActionListener(this); helixColour.setLabel("Helix propensity"); - helixColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - helixColour_actionPerformed(e); - } - }); + helixColour.addActionListener(this); strandColour.setLabel("Strand propensity"); - strandColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - strandColour_actionPerformed(e); - } - }); + strandColour.addActionListener(this); turnColour.setLabel("Turn propensity"); - turnColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - turnColour_actionPerformed(e); - } - }); + turnColour.addActionListener(this); buriedColour.setLabel("Buried Index"); - buriedColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - buriedColour_actionPerformed(e); - } - }); + buriedColour.addActionListener(this); abovePIDColour.setLabel("Above % Identity"); userDefinedColour.setLabel("User Defined"); - userDefinedColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - userDefinedColour_actionPerformed(e); - } - }); + userDefinedColour.addActionListener(this); PIDColour.setLabel("Percentage Identity"); - PIDColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - PIDColour_actionPerformed(e); - } - }); + PIDColour.addActionListener(this); BLOSUM62Colour.setLabel("BLOSUM62"); - BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - BLOSUM62Colour_actionPerformed(e); - } - }); + BLOSUM62Colour.addActionListener(this); conservationMenuItem.setLabel("Conservation"); } @@ -319,64 +280,66 @@ public class APopupMenu } } ap.seqPanel.seqCanvas.repaint(); + if(ap.overviewPanel!=null) + ap.overviewPanel.updateOverviewImage(); } - protected void clustalColour_actionPerformed(ActionEvent e) + protected void clustalColour_actionPerformed() { SequenceGroup sg = getGroup(); sg.cs = new ClustalxColourScheme(sg.sequences, ap.av.alignment.getWidth()); refresh(); } - protected void zappoColour_actionPerformed(ActionEvent e) + protected void zappoColour_actionPerformed() { getGroup().cs = new ZappoColourScheme(); refresh(); } - protected void taylorColour_actionPerformed(ActionEvent e) + protected void taylorColour_actionPerformed() { getGroup().cs = new TaylorColourScheme(); refresh(); } - protected void hydrophobicityColour_actionPerformed(ActionEvent e) + protected void hydrophobicityColour_actionPerformed() { getGroup().cs = new HydrophobicColourScheme(); refresh(); } - protected void helixColour_actionPerformed(ActionEvent e) + protected void helixColour_actionPerformed() { getGroup().cs = new HelixColourScheme(); refresh(); } - protected void strandColour_actionPerformed(ActionEvent e) + protected void strandColour_actionPerformed() { getGroup().cs = new StrandColourScheme(); refresh(); } - protected void turnColour_actionPerformed(ActionEvent e) + protected void turnColour_actionPerformed() { getGroup().cs = new TurnColourScheme(); refresh(); } - protected void buriedColour_actionPerformed(ActionEvent e) + protected void buriedColour_actionPerformed() { getGroup().cs = new BuriedColourScheme(); refresh(); } - public void nucleotideMenuItem_actionPerformed(ActionEvent e) + public void nucleotideMenuItem_actionPerformed() { getGroup().cs = new NucleotideColourScheme(); refresh(); } - protected void abovePIDColour_itemStateChanged(ItemEvent ie) + protected void abovePIDColour_itemStateChanged() { SequenceGroup sg = getGroup(); if(sg.cs==null) @@ -403,12 +366,12 @@ public class APopupMenu } - protected void userDefinedColour_actionPerformed(ActionEvent e) + protected void userDefinedColour_actionPerformed() { new UserDefinedColours(ap, getGroup()); } - protected void PIDColour_actionPerformed(ActionEvent e) + protected void PIDColour_actionPerformed() { SequenceGroup sg = getGroup(); sg.cs = new PIDColourScheme(); @@ -417,7 +380,7 @@ public class APopupMenu refresh(); } - protected void BLOSUM62Colour_actionPerformed(ActionEvent e) + protected void BLOSUM62Colour_actionPerformed() { SequenceGroup sg = getGroup(); @@ -429,13 +392,13 @@ public class APopupMenu refresh(); } - protected void noColourmenuItem_actionPerformed(ActionEvent e) + protected void noColourmenuItem_actionPerformed() { getGroup().cs = null; refresh(); } - protected void conservationMenuItem_itemStateChanged(ItemEvent ie) + protected void conservationMenuItem_itemStateChanged() { SequenceGroup sg = getGroup(); if(sg.cs==null) @@ -465,26 +428,6 @@ public class APopupMenu refresh(); } - protected void analyze_actionPerformed(ActionEvent e) - { - CutAndPasteTransfer cap = new CutAndPasteTransfer(false); - Frame frame = new Frame(); - frame.add(cap); - jalview.bin.JalviewLite.addFrame(frame, "Analyze this - ", 400, 300); - SequenceGroup sg = getGroup(); - StringBuffer sb = new StringBuffer(); - - for (int i = 0; i < sg.sequences.size(); i++) - { - Sequence tmp = (Sequence) sg.sequences.elementAt(i); - sb.append(tmp.getSequence(sg.getStartRes(), sg.getEndRes() + 1)); - sb.append("\n"); - } - - sb.append("Something amazing will happen soon"); - cap.setText(sb.toString()); - - } SequenceGroup getGroup() { @@ -497,7 +440,7 @@ public class APopupMenu return sg; } - void unGroupMenuItem_actionPerformed(ActionEvent e) + void unGroupMenuItem_actionPerformed() { SequenceGroup sg = ap.av.getSelectionGroup(); ap.av.alignment.deleteGroup(sg); @@ -505,19 +448,19 @@ public class APopupMenu ap.repaint(); } - public void showColourText_itemStateChanged(ItemEvent itemEvent) + public void showColourText_itemStateChanged() { getGroup().setColourText(showColourText.getState()); refresh(); } - public void showText_itemStateChanged(ItemEvent itemEvent) + public void showText_itemStateChanged() { getGroup().setDisplayText(showText.getState()); refresh(); } - public void showBoxes_itemStateChanged(ItemEvent itemEvent) + public void showBoxes_itemStateChanged() { getGroup().setDisplayBoxes(showBoxes.getState()); refresh();