X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAPopupMenu.java;h=8f6e49f44740cad34fa0f08a384677204afa3b56;hb=47aec94b56baa5b666c3189280f4d1d5c7567a95;hp=8488dd8ba6e955589e17f9970880494476aff8c2;hpb=55e2e9b22b133db8b9ff0979b0338a33081fc8fd;p=jalview.git diff --git a/src/jalview/appletgui/APopupMenu.java b/src/jalview/appletgui/APopupMenu.java index 8488dd8..8f6e49f 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(); @@ -53,6 +53,12 @@ public class APopupMenu CheckboxMenuItem showBoxes = new CheckboxMenuItem(); CheckboxMenuItem showText = new CheckboxMenuItem(); CheckboxMenuItem showColourText = new CheckboxMenuItem(); + Menu editMenu = new Menu("Edit"); + MenuItem copy = new MenuItem("Copy (Jalview Only)"); + MenuItem cut = new MenuItem("Cut (Jalview Only)"); + MenuItem toUpper = new MenuItem("To Upper Case"); + MenuItem toLower = new MenuItem("To Lower Case"); + MenuItem toggleCase = new MenuItem("Toggle Case"); public APopupMenu(AlignmentPanel apanel, final Sequence seq, Vector links) { @@ -75,12 +81,18 @@ public class APopupMenu } SequenceGroup sg = ap.av.getSelectionGroup(); - if (sg != null) + + if (sg != null && sg.getSize()>0) { showText.setState(sg.getDisplayText()); showColourText.setState(sg.getColourText()); showBoxes.setState(sg.getDisplayBoxes()); } + else + { + remove(groupMenu); + remove(editMenu); + } if (!ap.av.alignment.getGroups().contains(sg)) { @@ -131,11 +143,81 @@ public class APopupMenu } } + 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) + { + Object source = evt.getSource(); + if(source==clustalColour) + clustalColour_actionPerformed(); + else if(source==zappoColour) + zappoColour_actionPerformed(); + else if(source==taylorColour) + taylorColour_actionPerformed(); + else if(source==hydrophobicityColour) + hydrophobicityColour_actionPerformed(); + else if(source==helixColour) + helixColour_actionPerformed(); + else if(source==strandColour) + strandColour_actionPerformed(); + else if(source==clustalColour) + turnColour_actionPerformed(); + else if(source==buriedColour) + buriedColour_actionPerformed(); + else if(source==nucleotideMenuItem) + nucleotideMenuItem_actionPerformed(); + + else if(source==userDefinedColour) + userDefinedColour_actionPerformed(); + else if(source==PIDColour) + PIDColour_actionPerformed(); + else if(source==BLOSUM62Colour) + BLOSUM62Colour_actionPerformed(); + else if(source==noColourmenuItem) + noColourmenuItem_actionPerformed(); + else if(source==conservationMenuItem) + conservationMenuItem_itemStateChanged(); + else if(source==unGroupMenuItem) + unGroupMenuItem_actionPerformed(); + + else if(source==copy) + ap.alignFrame.copy_actionPerformed(); + else if(source==cut) + ap.alignFrame.cut_actionPerformed(); + else if(source==toUpper || source==toLower || source==toggleCase) + { + SequenceGroup sg = ap.av.getSelectionGroup(); + if (sg != null) + { + for (int g = 0; g < sg.getSize(); g++) + { + if (source == toggleCase) + sg.getSequenceAt(g).toggleCase(sg.getStartRes(), sg.getEndRes() + 1); + else + sg.getSequenceAt(g).changeCase(source == toUpper, sg.getStartRes(), + sg.getEndRes() + 1); + } + ap.seqPanel.seqCanvas.repaint(); + } + } + + } + void addPDB(Sequence seq) { - CutAndPasteTransfer cap = new CutAndPasteTransfer(true, ap.alignFrame.applet); + CutAndPasteTransfer cap = new CutAndPasteTransfer(true, ap.alignFrame); cap.setText("Paste your PDB file here."); - cap.setPDBImport(seq, ap.seqPanel.seqCanvas); + cap.setPDBImport(seq); Frame frame = new Frame(); frame.add(cap); jalview.bin.JalviewLite.addFrame(frame, "Paste PDB file ", 400, 300); @@ -148,63 +230,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); @@ -231,181 +271,111 @@ 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"); + add(editMenu); + editMenu.add(copy); + copy.addActionListener(this); + editMenu.add(cut); + cut.addActionListener(this); + editMenu.add(toUpper); + toUpper.addActionListener(this); + editMenu.add(toLower); + toLower.addActionListener(this); + editMenu.add(toggleCase); + toggleCase.addActionListener(this); + } void refresh() { - SequenceGroup sg = getGroup(); - if(sg!=null) - { - SuperGroup superG = ap.av.alignment.getSuperGroup(sg); - - if (superG != null) - { - superG.setSuperGroupProperties(sg); - } - } 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) @@ -432,12 +402,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(); @@ -446,7 +416,7 @@ public class APopupMenu refresh(); } - protected void BLOSUM62Colour_actionPerformed(ActionEvent e) + protected void BLOSUM62Colour_actionPerformed() { SequenceGroup sg = getGroup(); @@ -458,13 +428,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) @@ -506,7 +476,7 @@ public class APopupMenu return sg; } - void unGroupMenuItem_actionPerformed(ActionEvent e) + void unGroupMenuItem_actionPerformed() { SequenceGroup sg = ap.av.getSelectionGroup(); ap.av.alignment.deleteGroup(sg); @@ -514,19 +484,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();