X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2FMCview%2FPDBViewer.java;h=8d454e75e1710626da60379d7134a0e0b399a33f;hb=838e4f91d4a53dd315640dbc9ff6ef7a815ee576;hp=dc53855d5933cb8fdb99030ffeabdcf42c0a38c5;hpb=b2f9a8d7bce642ff4011bc6d49e02bb0569fbb11;p=jalview.git diff --git a/src/MCview/PDBViewer.java b/src/MCview/PDBViewer.java index dc53855..8d454e7 100755 --- a/src/MCview/PDBViewer.java +++ b/src/MCview/PDBViewer.java @@ -1,35 +1,69 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1) - * Copyright (C) 2014 The Jalview Authors + * 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. + * 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 . + * 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 java.io.*; - -import java.awt.event.*; -import javax.swing.*; - -import jalview.datamodel.*; -import jalview.gui.*; -import jalview.io.*; -import jalview.schemes.*; +import jalview.datamodel.PDBEntry; +import jalview.datamodel.SequenceI; +import jalview.gui.AlignmentPanel; +import jalview.gui.Desktop; +import jalview.gui.OOMWarning; +import jalview.gui.UserDefinedColours; +import jalview.io.JalviewFileChooser; +import jalview.io.JalviewFileView; +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.UserColourScheme; +import jalview.schemes.ZappoColourScheme; import jalview.util.MessageManager; import jalview.ws.ebi.EBIFetchClient; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.PrintWriter; + +import javax.swing.ButtonGroup; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JColorChooser; +import javax.swing.JInternalFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JRadioButtonMenuItem; +import javax.swing.SwingUtilities; + public class PDBViewer extends JInternalFrame implements Runnable { @@ -52,7 +86,6 @@ public class PDBViewer extends JInternalFrame implements Runnable public PDBViewer(PDBEntry pdbentry, SequenceI[] seq, String[] chains, AlignmentPanel ap, String protocol) - { this.pdbentry = pdbentry; this.seq = seq; @@ -80,7 +113,7 @@ public class PDBViewer extends JInternalFrame implements Runnable try { tmpPDBFile = pdbentry.getFile(); - PDBfile pdbfile = new PDBfile(tmpPDBFile, + PDBfile pdbfile = new PDBfile(false, false, false, tmpPDBFile, jalview.io.AppletFormatAdapter.FILE); pdbcanvas.init(pdbentry, seq, chains, ap, protocol); @@ -122,7 +155,9 @@ public class PDBViewer extends JInternalFrame implements Runnable .getAbsolutePath()); if (pdbentry.getFile() != null) + { pdbcanvas.init(pdbentry, seq, chains, ap, protocol); + } } catch (Exception ex) { pdbcanvas.errorMessage = "Error retrieving file: " + pdbentry.getId(); @@ -294,7 +329,8 @@ public class PDBViewer extends JInternalFrame implements Runnable } }); viewMenu.setText(MessageManager.getString("action.view")); - background.setText(MessageManager.getString("label.background_colour") + "..."); + background + .setText(MessageManager.getString("action.background_colour")); background.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -364,8 +400,10 @@ public class PDBViewer extends JInternalFrame implements Runnable int option = JOptionPane.showInternalConfirmDialog( jalview.gui.Desktop.desktop, - MessageManager.getString("label.remove_from_default_list"), - MessageManager.getString("label.remove_user_defined_colour"), + MessageManager + .getString("label.remove_from_default_list"), + MessageManager + .getString("label.remove_user_defined_colour"), JOptionPane.YES_NO_OPTION); if (option == JOptionPane.YES_OPTION) { @@ -462,7 +500,7 @@ public class PDBViewer extends JInternalFrame implements Runnable */ public void eps_actionPerformed(ActionEvent e) { - makePDBImage(jalview.util.ImageMaker.EPS); + makePDBImage(jalview.util.ImageMaker.TYPE.EPS); } /** @@ -473,26 +511,34 @@ public class PDBViewer extends JInternalFrame implements Runnable */ public void png_actionPerformed(ActionEvent e) { - makePDBImage(jalview.util.ImageMaker.PNG); + makePDBImage(jalview.util.ImageMaker.TYPE.PNG); } - void makePDBImage(int type) + void makePDBImage(jalview.util.ImageMaker.TYPE type) { int width = pdbcanvas.getWidth(); int height = pdbcanvas.getHeight(); jalview.util.ImageMaker im; - if (type == jalview.util.ImageMaker.PNG) + if (type == jalview.util.ImageMaker.TYPE.PNG) + { + im = new jalview.util.ImageMaker(this, + jalview.util.ImageMaker.TYPE.PNG, "Make PNG image from view", + width, height, null, null); + } + else if (type == jalview.util.ImageMaker.TYPE.EPS) { - im = new jalview.util.ImageMaker(this, jalview.util.ImageMaker.PNG, - "Make PNG image from view", width, height, null, null); + im = new jalview.util.ImageMaker(this, + jalview.util.ImageMaker.TYPE.EPS, "Make EPS file from view", + width, height, null, this.getTitle()); } else { - im = new jalview.util.ImageMaker(this, jalview.util.ImageMaker.EPS, - "Make EPS file from view", width, height, null, - this.getTitle()); + + im = new jalview.util.ImageMaker(this, + jalview.util.ImageMaker.TYPE.SVG, "Make SVG file from PCA", + width, height, null, this.getTitle()); } if (im.getGraphics() != null) @@ -566,7 +612,9 @@ public class PDBViewer extends JInternalFrame implements Runnable try { cap.setText(pdbcanvas.mappingDetails.toString()); - Desktop.addInternalFrame(cap, MessageManager.getString("label.pdb_sequence_mapping"), 550, 600); + Desktop.addInternalFrame(cap, + MessageManager.getString("label.pdb_sequence_mapping"), 550, + 600); } catch (OutOfMemoryError oom) { new OOMWarning("Opening sequence to structure mapping report", oom); @@ -629,7 +677,8 @@ public class PDBViewer extends JInternalFrame implements Runnable public void user_actionPerformed(ActionEvent e) { - if (e.getActionCommand().equals(MessageManager.getString("action.user_defined"))) + if (e.getActionCommand().equals( + MessageManager.getString("action.user_defined"))) { // new UserDefinedColours(pdbcanvas, null); } @@ -647,7 +696,8 @@ public class PDBViewer extends JInternalFrame implements Runnable public void background_actionPerformed(ActionEvent e) { java.awt.Color col = JColorChooser.showDialog(this, - MessageManager.getString("label.select_backgroud_colour"), pdbcanvas.backgroundColour); + MessageManager.getString("label.select_backgroud_colour"), + pdbcanvas.backgroundColour); if (col != null) { @@ -663,7 +713,7 @@ public class PDBViewer extends JInternalFrame implements Runnable jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle("Save PDB File"); + chooser.setDialogTitle(MessageManager.getString("label.save_pdb_file")); chooser.setToolTipText(MessageManager.getString("action.save")); int value = chooser.showSaveDialog(this);