X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FPopupMenu.java;h=037f0070997b302d4913198437b53744c3d9a477;hb=6fb502e4a8749d1d98f5442c3b8156ab47996b77;hp=ef19521bf7fde5de06d821dddbf4bfd8f2cb1bc0;hpb=1a8f953dd71a9e319e910261927f269d69b4692c;p=jalview.git diff --git a/src/jalview/gui/PopupMenu.java b/src/jalview/gui/PopupMenu.java index ef19521..037f007 100644 --- a/src/jalview/gui/PopupMenu.java +++ b/src/jalview/gui/PopupMenu.java @@ -23,14 +23,6 @@ import java.awt.*; import java.awt.event.*; import javax.swing.*; -import javax.xml.parsers.ParserConfigurationException; - -import org.xml.sax.SAXException; - -import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax; -import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed; -import fr.orsay.lri.varna.exceptions.ExceptionPermissionDenied; -import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses; import jalview.analysis.*; import jalview.commands.*; @@ -98,7 +90,7 @@ public class PopupMenu extends JPopupMenu JMenuItem sequenceSelDetails = new JMenuItem(); SequenceI sequence; - + JMenuItem createGroupMenuItem = new JMenuItem(); JMenuItem unGroupMenuItem = new JMenuItem(); JMenuItem outline = new JMenuItem(); @@ -130,7 +122,11 @@ public class PopupMenu extends JPopupMenu JMenu pdbMenu = new JMenu(); JMenuItem pdbFromFile = new JMenuItem(); - + // JBPNote: Commented these out - Should add these services via the web services menu system. + // JMenuItem ContraFold = new JMenuItem(); + + // JMenuItem RNAFold = new JMenuItem(); + JMenuItem enterPDB = new JMenuItem(); JMenuItem discoverPDB = new JMenuItem(); @@ -415,9 +411,10 @@ public class PopupMenu extends JPopupMenu } SequenceGroup sg = ap.av.getSelectionGroup(); + boolean isDefinedGroup = (sg!=null) ? ap.av.getAlignment().getGroups().contains(sg) : false; if (sg != null && sg.getSize() > 0) - { + { groupName.setText("Name: " + sg.getName()); groupName.setText("Edit name and description of current group."); @@ -470,10 +467,7 @@ public class PopupMenu extends JPopupMenu purinePyrimidineColour.setSelected(true); } - else if (sg.cs instanceof RNAInteractionColourScheme) - { - RNAInteractionColour.setSelected(true); - } + /* * else if (sg.cs instanceof CovariationColourScheme) { * covariationColour.setSelected(true); } @@ -548,9 +542,15 @@ public class PopupMenu extends JPopupMenu editMenu.setVisible(false); } - if (!ap.av.getAlignment().getGroups().contains(sg)) + if (!isDefinedGroup) { + createGroupMenuItem.setVisible(true); unGroupMenuItem.setVisible(false); + jMenu1.setText("Edit New Group"); + } else { + createGroupMenuItem.setVisible(false); + unGroupMenuItem.setVisible(true); + jMenu1.setText("Edit Group"); } if (seq == null) @@ -963,6 +963,14 @@ public class PopupMenu extends JPopupMenu unGroupMenuItem_actionPerformed(); } }); + createGroupMenuItem.setText("Create Group"); + createGroupMenuItem.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + createGroupMenuItem_actionPerformed(); + } + }); outline.setText("Border colour"); outline.addActionListener(new java.awt.event.ActionListener() @@ -1063,32 +1071,35 @@ public class PopupMenu extends JPopupMenu { public void actionPerformed(ActionEvent e) { - try { - pdbFromFile_actionPerformed(); - } catch (ExceptionFileFormatOrSyntax e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ParserConfigurationException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (SAXException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ExceptionPermissionDenied e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ExceptionLoadingFailed e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (InterruptedException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ExceptionUnmatchedClosingParentheses e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } + pdbFromFile_actionPerformed(); } }); +// RNAFold.setText("From RNA Fold with predict2D"); +// RNAFold.addActionListener(new ActionListener() +// { +// public void actionPerformed(ActionEvent e) +// { +// try { +// RNAFold_actionPerformed(); +// } catch (Exception e1) { +// // TODO Auto-generated catch block +// e1.printStackTrace(); +// } +// } +// }); +// ContraFold.setText("From Contra Fold with predict2D"); +// ContraFold.addActionListener(new ActionListener() +// { +// public void actionPerformed(ActionEvent e) +// { +// try { +// ContraFold_actionPerformed(); +// } catch (Exception e1) { +// // TODO Auto-generated catch block +// e1.printStackTrace(); +// } +// } +// }); enterPDB.setText("Enter PDB Id"); enterPDB.addActionListener(new ActionListener() { @@ -1148,6 +1159,8 @@ public class PopupMenu extends JPopupMenu groupMenu.add(editMenu); groupMenu.add(outputMenu); groupMenu.add(sequenceFeature); + groupMenu.add(createGroupMenuItem); + groupMenu.add(unGroupMenuItem); groupMenu.add(jMenu1); sequenceMenu.add(sequenceName); sequenceMenu.add(sequenceDetails); @@ -1165,7 +1178,8 @@ public class PopupMenu extends JPopupMenu colourMenu.add(buriedColour); colourMenu.add(nucleotideMenuItem); if (ap.getAlignment().isNucleotide()) { - colourMenu.add(RNAInteractionColour); + // JBPNote - commented since the colourscheme isn't functional + // colourMenu.add(RNAInteractionColour); colourMenu.add(purinePyrimidineColour); } // colourMenu.add(covariationColour); @@ -1201,10 +1215,12 @@ public class PopupMenu extends JPopupMenu editMenu.add(lowerCase); editMenu.add(toggle); pdbMenu.add(pdbFromFile); + // JBPNote: These shouldn't be added here - should appear in a generic 'apply web service to this sequence menu' + // pdbMenu.add(RNAFold); + // pdbMenu.add(ContraFold); pdbMenu.add(enterPDB); pdbMenu.add(discoverPDB); jMenu1.add(groupName); - jMenu1.add(unGroupMenuItem); jMenu1.add(colourMenu); jMenu1.add(showBoxes); jMenu1.add(showText); @@ -1330,15 +1346,7 @@ public class PopupMenu extends JPopupMenu } }); - RNAInteractionColour.setText("RNA Interaction type"); - RNAInteractionColour - .addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - RNAInteractionColour_actionPerformed(); - } - }); + /* * covariationColour.addActionListener(new java.awt.event.ActionListener() { * public void actionPerformed(ActionEvent e) { @@ -1526,11 +1534,7 @@ public class PopupMenu extends JPopupMenu refresh(); } - protected void RNAInteractionColour_actionPerformed() - { - getGroup().cs = new RNAInteractionColourScheme(); - refresh(); - } + /* * protected void covariationColour_actionPerformed() { getGroup().cs = new * CovariationColourScheme(sequence.getAnnotation()[0]); refresh(); } @@ -1692,7 +1696,7 @@ public class PopupMenu extends JPopupMenu sequence.getAnnotation()[0], null, AnnotationColourGradient.NO_THRESHOLD); - acg.predefinedColours = true; + acg.setPredefinedColours(true); sg.cs = acg; refresh(); @@ -1792,6 +1796,11 @@ public class PopupMenu extends JPopupMenu ap.av.setSelectionGroup(null); refresh(); } + void createGroupMenuItem_actionPerformed() + { + getGroup(); // implicitly creates group - note - should apply defaults / use standard alignment window logic for this + refresh(); + } /** * DOCUMENT ME! @@ -1984,7 +1993,7 @@ public class PopupMenu extends JPopupMenu oal = null; } - public void pdbFromFile_actionPerformed() throws IOException + public void pdbFromFile_actionPerformed() { jalview.io.JalviewFileChooser chooser = new jalview.io.JalviewFileChooser( jalview.bin.Cache.getProperty("LAST_DIRECTORY")); @@ -2005,7 +2014,18 @@ public class PopupMenu extends JPopupMenu } } - + // JBNote: commented out - these won't be instantiated here...! +// public void RNAFold_actionPerformed() throws Exception +// { +// Predict2D P2D = new Predict2D(); +// P2D.getStructure2DFromRNAFold("toto"); +// } +// +// public void ContraFold_actionPerformed() throws Exception +// { +// Predict2D P2D = new Predict2D(); +// P2D.getStructure2DFromContraFold("toto"); +// } public void enterPDB_actionPerformed() { String id = JOptionPane.showInternalInputDialog(Desktop.desktop,