X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2FMCview%2FAppletPDBViewer.java;h=0cfe3bd3361e23bc37eab198b5f2e2fd94b4480a;hb=838e4f91d4a53dd315640dbc9ff6ef7a815ee576;hp=c3063a8bffa7008544e8f92966022c3498db6dce;hpb=8893c2ac9824d4c566ae69c73d34889c5316b058;p=jalview.git diff --git a/src/MCview/AppletPDBViewer.java b/src/MCview/AppletPDBViewer.java old mode 100755 new mode 100644 index c3063a8..0cfe3bd --- a/src/MCview/AppletPDBViewer.java +++ b/src/MCview/AppletPDBViewer.java @@ -1,237 +1,278 @@ -package MCview; - -import java.awt.*; - -import java.awt.event.*; -import jalview.datamodel.*; -import jalview.appletgui.*; -import java.awt.event.ActionListener; -import java.awt.event.ActionEvent; - - -public class AppletPDBViewer extends Frame -{ - PDBEntry pdb; - Sequence sequence; - AppletPDBCanvas pdbcanvas; - - - public AppletPDBViewer(String pdbtext,String type, - Sequence seq, - SeqCanvas seqcanvas) - { - sequence = seq; - - try - { - jbInit(); - } - catch (Exception ex) - { - ex.printStackTrace(); - } - - pdbcanvas = new AppletPDBCanvas(seqcanvas, seq); - - add(pdbcanvas, BorderLayout.CENTER); - - StringBuffer title = new StringBuffer(sequence.getName() + ":"); - - jalview.bin.JalviewLite.addFrame(this,title.toString(),400, 400); - - try{ - PDBfile pdbfile = new PDBfile(pdbtext, type); - pdbcanvas.setPDBFile(pdbfile); - } - catch(Exception ex){ - pdbcanvas.errorLoading = true; - pdbcanvas.repaint(); - } - } - - - private void jbInit() - throws Exception - { - this.setMenuBar(jMenuBar1); - fileMenu.setLabel("File"); - coloursMenu.setLabel("Colours"); - mapping.setLabel("View Mapping"); - mapping.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - mapping_actionPerformed(); - } - }); - wire.setLabel("Wireframe"); - wire.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent e) - { - wire_actionPerformed(); - } - }); - depth.setState(true); - depth.setLabel("Depthcue"); - depth.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent e) - { - depth_actionPerformed(); - } - }); - zbuffer.setState(true); - zbuffer.setLabel("Z Buffering"); - zbuffer.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent e) - { - zbuffer_actionPerformed(); - } - }); - charge.setLabel("Charge & Cysteine"); - charge.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - charge_actionPerformed(); - } - }); - hydro.setLabel("Hydrophobicity"); - hydro.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - hydro_actionPerformed(); - } - }); - chain.setLabel("By Chain"); - chain.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - chain_actionPerformed(); - } - }); - seqButton.setLabel("By Sequence"); - seqButton.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e){ - seqButton_actionPerformed(); - } - }); - allchains.setLabel("All Chains Visible"); - allchains.addItemListener(new ItemListener() - { - public void itemStateChanged(ItemEvent itemEvent) - { - allchains_itemStateChanged(itemEvent); - } - }); - jMenuBar1.add(fileMenu); - jMenuBar1.add(coloursMenu); - fileMenu.add(mapping);; - - coloursMenu.add(seqButton); - coloursMenu.add(chain); - coloursMenu.add(hydro); - coloursMenu.add(charge); - coloursMenu.addSeparator(); - coloursMenu.add(wire); - coloursMenu.add(depth); - coloursMenu.add(zbuffer); - coloursMenu.add(allchains); - allchains.setState(true); - } - - MenuBar jMenuBar1 = new MenuBar(); - Menu fileMenu = new Menu(); - Menu coloursMenu = new Menu(); - MenuItem mapping = new MenuItem(); - CheckboxGroup bg = new CheckboxGroup(); - CheckboxMenuItem wire = new CheckboxMenuItem(); - CheckboxMenuItem depth = new CheckboxMenuItem(); - CheckboxMenuItem zbuffer = new CheckboxMenuItem(); - - MenuItem charge = new MenuItem(); - MenuItem hydro = new MenuItem(); - MenuItem chain = new MenuItem(); - MenuItem seqButton = new MenuItem(); - - CheckboxMenuItem allchains = new CheckboxMenuItem(); - - public void charge_actionPerformed() - { - clearButtonGroup(); - pdbcanvas.pdb.setChargeColours(); - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void hydro_actionPerformed() - { - clearButtonGroup(); - pdbcanvas.pdb.setHydrophobicityColours(); - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void chain_actionPerformed() - { - clearButtonGroup(); - pdbcanvas.pdb.setChainColours(); - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void zbuffer_actionPerformed() - { - pdbcanvas.zbuffer = ! pdbcanvas.zbuffer; - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void depth_actionPerformed() - { - pdbcanvas.depthcue = ! pdbcanvas.depthcue; - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void wire_actionPerformed() - { - pdbcanvas.wire = ! pdbcanvas.wire; - pdbcanvas.redrawneeded=true; - pdbcanvas.repaint(); - } - - public void seqButton_actionPerformed() - { - clearButtonGroup(); - pdbcanvas.bysequence = true; - pdbcanvas.updateSeqColours(); - pdbcanvas.repaint(); - } - - void clearButtonGroup() - { - pdbcanvas.bysequence = false; - pdbcanvas.bymolecule = false; - } - - public void mapping_actionPerformed() - { - jalview.appletgui.CutAndPasteTransfer cap - = new jalview.appletgui.CutAndPasteTransfer(false, null); - Frame frame = new Frame(); - frame.add(cap); - jalview.bin.JalviewLite.addFrame(frame, "PDB - Sequence Mapping", 500, 600); - cap.setText(pdbcanvas.mappingDetails.toString()); - } - - public void allchains_itemStateChanged(ItemEvent itemEvent) - { - pdbcanvas.setAllchainsVisible(allchains.getState()); - } -} +/* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1) + * Copyright (C) 2015 The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ +package MCview; + +import jalview.appletgui.AlignmentPanel; +import jalview.appletgui.EmbmenuFrame; +import jalview.datamodel.PDBEntry; +import jalview.datamodel.SequenceI; +import jalview.schemes.BuriedColourScheme; +import jalview.schemes.HelixColourScheme; +import jalview.schemes.HydrophobicColourScheme; +import jalview.schemes.StrandColourScheme; +import jalview.schemes.TaylorColourScheme; +import jalview.schemes.TurnColourScheme; +import jalview.schemes.ZappoColourScheme; +import jalview.util.MessageManager; + +import java.awt.BorderLayout; +import java.awt.CheckboxGroup; +import java.awt.CheckboxMenuItem; +import java.awt.Frame; +import java.awt.Menu; +import java.awt.MenuBar; +import java.awt.MenuItem; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; + +public class AppletPDBViewer extends EmbmenuFrame implements + ActionListener, ItemListener +{ + AppletPDBCanvas pdbcanvas; + + public AppletPDBViewer(PDBEntry pdbentry, SequenceI[] seq, + String[] chains, AlignmentPanel ap, String protocol) + { + try + { + jbInit(); + } catch (Exception ex) + { + ex.printStackTrace(); + } + + pdbcanvas = new AppletPDBCanvas(pdbentry, seq, chains, ap, protocol); + + embedMenuIfNeeded(pdbcanvas); + add(pdbcanvas, BorderLayout.CENTER); + + StringBuffer title = new StringBuffer(seq[0].getName() + ":" + + pdbcanvas.pdbentry.getFile()); + + jalview.bin.JalviewLite.addFrame(this, title.toString(), 400, 400); + + } + + public void actionPerformed(ActionEvent evt) + { + if (evt.getSource() == mapping) + { + jalview.appletgui.CutAndPasteTransfer cap = new jalview.appletgui.CutAndPasteTransfer( + false, null); + Frame frame = new Frame(); + frame.add(cap); + jalview.bin.JalviewLite.addFrame(frame, + MessageManager.getString("label.pdb_sequence_mapping"), 500, + 600); + cap.setText(pdbcanvas.mappingDetails.toString()); + + } + else if (evt.getSource() == charge) + { + pdbcanvas.bysequence = false; + pdbcanvas.pdb.setChargeColours(); + } + + else if (evt.getSource() == chain) + { + pdbcanvas.bysequence = false; + pdbcanvas.pdb.setChainColours(); + } + else if (evt.getSource() == seqButton) + { + pdbcanvas.bysequence = true; + pdbcanvas.colourBySequence(); + + } + else if (evt.getSource() == zappo) + { + pdbcanvas.setColours(new ZappoColourScheme()); + } + else if (evt.getSource() == taylor) + { + pdbcanvas.setColours(new TaylorColourScheme()); + } + else if (evt.getSource() == hydro) + { + pdbcanvas.setColours(new HydrophobicColourScheme()); + } + else if (evt.getSource() == helix) + { + pdbcanvas.setColours(new HelixColourScheme()); + } + else if (evt.getSource() == strand) + { + pdbcanvas.setColours(new StrandColourScheme()); + } + else if (evt.getSource() == turn) + { + pdbcanvas.setColours(new TurnColourScheme()); + } + else if (evt.getSource() == buried) + { + pdbcanvas.setColours(new BuriedColourScheme()); + } + else if (evt.getSource() == user) + { + pdbcanvas.bysequence = false; + new jalview.appletgui.UserDefinedColours(pdbcanvas); + } + + pdbcanvas.redrawneeded = true; + pdbcanvas.repaint(); + + } + + public void itemStateChanged(ItemEvent evt) + { + if (evt.getSource() == allchains) + { + pdbcanvas.setAllchainsVisible(allchains.getState()); + } + else if (evt.getSource() == wire) + { + pdbcanvas.wire = !pdbcanvas.wire; + } + else if (evt.getSource() == depth) + { + pdbcanvas.depthcue = !pdbcanvas.depthcue; + } + else if (evt.getSource() == zbuffer) + { + pdbcanvas.zbuffer = !pdbcanvas.zbuffer; + } + pdbcanvas.redrawneeded = true; + pdbcanvas.repaint(); + } + + private void jbInit() throws Exception + { + setMenuBar(jMenuBar1); + fileMenu.setLabel(MessageManager.getString("action.file")); + coloursMenu.setLabel(MessageManager.getString("label.colours")); + mapping.setLabel(MessageManager.getString("label.view_mapping")); + mapping.addActionListener(this); + wire.setLabel(MessageManager.getString("label.wireframe")); + wire.addItemListener(this); + depth.setState(true); + depth.setLabel(MessageManager.getString("label.depthcue")); + depth.addItemListener(this); + zbuffer.setState(true); + zbuffer.setLabel(MessageManager.getString("label.z_buffering")); + zbuffer.addItemListener(this); + charge.setLabel(MessageManager.getString("label.charge_cysteine")); + charge.addActionListener(this); + hydro.setLabel(MessageManager.getString("label.hydrophobicity")); + hydro.addActionListener(this); + chain.setLabel(MessageManager.getString("action.by_chain")); + chain.addActionListener(this); + seqButton.setLabel(MessageManager.getString("action.by_sequence")); + seqButton.addActionListener(this); + allchains + .setLabel(MessageManager.getString("label.all_chains_visible")); + allchains.addItemListener(this); + viewMenu.setLabel(MessageManager.getString("action.view")); + zappo.setLabel(MessageManager.getString("label.zappo")); + zappo.addActionListener(this); + taylor.setLabel(MessageManager.getString("label.taylor")); + taylor.addActionListener(this); + helix.setLabel(MessageManager.getString("label.helix_propensity")); + helix.addActionListener(this); + strand.setLabel(MessageManager.getString("label.strand_propensity")); + strand.addActionListener(this); + turn.setLabel(MessageManager.getString("label.turn_propensity")); + turn.addActionListener(this); + buried.setLabel(MessageManager.getString("label.buried_index")); + buried.addActionListener(this); + user.setLabel(MessageManager.getString("action.user_defined")); + user.addActionListener(this); + jMenuBar1.add(fileMenu); + jMenuBar1.add(coloursMenu); + jMenuBar1.add(viewMenu); + fileMenu.add(mapping); + ; + + coloursMenu.add(seqButton); + coloursMenu.add(chain); + coloursMenu.add(charge); + coloursMenu.add(zappo); + coloursMenu.add(taylor); + coloursMenu.add(hydro); + coloursMenu.add(helix); + coloursMenu.add(strand); + coloursMenu.add(turn); + coloursMenu.add(buried); + coloursMenu.add(user); + viewMenu.add(wire); + viewMenu.add(depth); + viewMenu.add(zbuffer); + viewMenu.add(allchains); + allchains.setState(true); + } + + MenuBar jMenuBar1 = new MenuBar(); + + Menu fileMenu = new Menu(); + + Menu coloursMenu = new Menu(); + + MenuItem mapping = new MenuItem(); + + CheckboxGroup bg = new CheckboxGroup(); + + CheckboxMenuItem wire = new CheckboxMenuItem(); + + CheckboxMenuItem depth = new CheckboxMenuItem(); + + CheckboxMenuItem zbuffer = new CheckboxMenuItem(); + + MenuItem charge = new MenuItem(); + + MenuItem hydro = new MenuItem(); + + MenuItem chain = new MenuItem(); + + MenuItem seqButton = new MenuItem(); + + CheckboxMenuItem allchains = new CheckboxMenuItem(); + + Menu viewMenu = new Menu(); + + MenuItem turn = new MenuItem(); + + MenuItem strand = new MenuItem(); + + MenuItem helix = new MenuItem(); + + MenuItem taylor = new MenuItem(); + + MenuItem zappo = new MenuItem(); + + MenuItem buried = new MenuItem(); + + MenuItem user = new MenuItem(); + + // End StructureListener + // ////////////////////////// + +}