From fadce01a8bbc1824b345406a93ee3ac279975827 Mon Sep 17 00:00:00 2001 From: MorellThomas Date: Mon, 4 Dec 2023 16:42:17 +0100 Subject: [PATCH] New independent jbgui Panel for PaSiMap. Revert the changes to GPCAPanel from the last commit --- src/jalview/gui/PaSiMapPanel.java | 10 +- src/jalview/jbgui/GPCAPanel.java | 16 -- src/jalview/jbgui/GPaSiMapPanel.java | 369 ++++++++++++++++++++++++++++++++++ 3 files changed, 374 insertions(+), 21 deletions(-) create mode 100755 src/jalview/jbgui/GPaSiMapPanel.java diff --git a/src/jalview/gui/PaSiMapPanel.java b/src/jalview/gui/PaSiMapPanel.java index f2445dc..832bbad 100644 --- a/src/jalview/gui/PaSiMapPanel.java +++ b/src/jalview/gui/PaSiMapPanel.java @@ -32,7 +32,7 @@ import jalview.datamodel.HiddenColumns; import jalview.datamodel.SequenceI; import jalview.gui.ImageExporter.ImageWriterI; import jalview.gui.JalviewColourChooser.ColourChooserListener; -import jalview.jbgui.GPCAPanel; +import jalview.jbgui.GPaSiMapPanel; import jalview.math.RotatableMatrix.Axis; import jalview.util.ImageMaker; import jalview.util.MessageManager; @@ -59,7 +59,7 @@ import javax.swing.event.InternalFrameEvent; /** * The panel holding the Pairwise Similarity Map 3-D visualisation */ -public class PaSiMapPanel extends GPCAPanel +public class PaSiMapPanel extends GPaSiMapPanel implements Runnable, IProgressIndicator { private static final int MIN_WIDTH = 470; @@ -513,7 +513,7 @@ public class PaSiMapPanel extends GPCAPanel * (non-Javadoc) * * @see - * jalview.jbgui.GPCAPanel#outputPoints_actionPerformed(java.awt.event.ActionEvent + * jalview.jbgui.GPaSiMapPanel#outputPoints_actionPerformed(java.awt.event.ActionEvent * ) */ @Override @@ -539,7 +539,7 @@ public class PaSiMapPanel extends GPCAPanel * (non-Javadoc) * * @see - * jalview.jbgui.GPCAPanel#outputProjPoints_actionPerformed(java.awt.event + * jalview.jbgui.GPaSiMapPanel#outputProjPoints_actionPerformed(java.awt.event * .ActionEvent) */ @Override @@ -565,7 +565,7 @@ public class PaSiMapPanel extends GPCAPanel * (non-Javadoc) * * @see - * jalview.jbgui.GPCAPanel#outputAlignment_actionPerformed(java.awt.event + * jalview.jbgui.GPaSiMapPanel#outputAlignment_actionPerformed(java.awt.event * .ActionEvent) */ @Override diff --git a/src/jalview/jbgui/GPCAPanel.java b/src/jalview/jbgui/GPCAPanel.java index db260be..ec5b209 100755 --- a/src/jalview/jbgui/GPCAPanel.java +++ b/src/jalview/jbgui/GPCAPanel.java @@ -222,17 +222,6 @@ public class GPCAPanel extends JInternalFrame print_actionPerformed(); } }); - JMenuItem outputAlignment = new JMenuItem(); - outputAlignment.setText( - MessageManager.getString("label.output_alignment")); - outputAlignment.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) - { - outputAlignment_actionPerformed(); - } - }); viewMenu.setText(MessageManager.getString("action.view")); viewMenu.addMenuListener(new MenuListener() { @@ -311,7 +300,6 @@ public class GPCAPanel extends JInternalFrame fileMenu.add(originalSeqData); fileMenu.add(outputPoints); fileMenu.add(outputProjPoints); - fileMenu.add(outputAlignment); saveMenu.add(eps); saveMenu.add(png); viewMenu.add(showLabels); @@ -331,10 +319,6 @@ public class GPCAPanel extends JInternalFrame { } - protected void outputAlignment_actionPerformed() - { - } - public void makePCAImage(TYPE imageType) { } diff --git a/src/jalview/jbgui/GPaSiMapPanel.java b/src/jalview/jbgui/GPaSiMapPanel.java new file mode 100755 index 0000000..369a005 --- /dev/null +++ b/src/jalview/jbgui/GPaSiMapPanel.java @@ -0,0 +1,369 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ 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 jalview.jbgui; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JComboBox; +import javax.swing.JInternalFrame; +import javax.swing.JLabel; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.event.MenuEvent; +import javax.swing.event.MenuListener; + +import jalview.util.ImageMaker.TYPE; +import jalview.util.MessageManager; + +public class GPaSiMapPanel extends JInternalFrame +{ + private static final Font VERDANA_12 = new Font("Verdana", 0, 12); + + protected JComboBox xCombobox = new JComboBox<>(); + + protected JComboBox yCombobox = new JComboBox<>(); + + protected JComboBox zCombobox = new JComboBox<>(); + + protected JMenu viewMenu = new JMenu(); + + protected JCheckBoxMenuItem showLabels = new JCheckBoxMenuItem(); + + protected JMenu associateViewsMenu = new JMenu(); + + protected JLabel statusBar = new JLabel(); + + protected JPanel statusPanel = new JPanel(); + + protected JMenuItem originalSeqData; + + /** + * Constructor + */ + public GPaSiMapPanel() + { + try + { + jbInit(); + } catch (Exception e) + { + e.printStackTrace(); + } + + for (int i = 1; i < 8; i++) + { + xCombobox.addItem("dim " + i); + yCombobox.addItem("dim " + i); + zCombobox.addItem("dim " + i); + } + } + public GPaSiMapPanel(int dim) + { + try + { + jbInit(); + } catch (Exception e) + { + e.printStackTrace(); + } + + for (int i = 1; i <= dim; i++) + { + xCombobox.addItem("dim " + i); + yCombobox.addItem("dim " + i); + zCombobox.addItem("dim " + i); + } + } + + private void jbInit() throws Exception + { + setFrameIcon(null); + setName("jalview-pca"); + this.getContentPane().setLayout(new BorderLayout()); + JPanel jPanel2 = new JPanel(); + jPanel2.setLayout(new FlowLayout()); + JLabel jLabel1 = new JLabel(); + jLabel1.setFont(VERDANA_12); + jLabel1.setText("x="); + JLabel jLabel2 = new JLabel(); + jLabel2.setFont(VERDANA_12); + jLabel2.setText("y="); + JLabel jLabel3 = new JLabel(); + jLabel3.setFont(VERDANA_12); + jLabel3.setText("z="); + jPanel2.setBackground(Color.white); + jPanel2.setBorder(null); + zCombobox.setFont(VERDANA_12); + zCombobox.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + doDimensionChange(); + } + }); + yCombobox.setFont(VERDANA_12); + yCombobox.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + doDimensionChange(); + } + }); + xCombobox.setFont(VERDANA_12); + xCombobox.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + doDimensionChange(); + } + }); + JButton resetButton = new JButton(); + resetButton.setFont(VERDANA_12); + resetButton.setText(MessageManager.getString("action.reset")); + resetButton.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + resetButton_actionPerformed(); + } + }); + JMenu fileMenu = new JMenu(); + fileMenu.setText(MessageManager.getString("action.file")); + JMenu saveMenu = new JMenu(); + saveMenu.setText(MessageManager.getString("action.save_as")); + JMenuItem eps = new JMenuItem("EPS"); + eps.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + makePCAImage(TYPE.EPS); + } + }); + JMenuItem png = new JMenuItem("PNG"); + png.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + makePCAImage(TYPE.PNG); + } + }); + JMenuItem outputValues = new JMenuItem(); + outputValues.setText(MessageManager.getString("label.output_values")); + outputValues.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + outputValues_actionPerformed(); + } + }); + JMenuItem outputPoints = new JMenuItem(); + outputPoints.setText(MessageManager.getString("label.output_points")); + outputPoints.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + outputPoints_actionPerformed(); + } + }); + JMenuItem outputProjPoints = new JMenuItem(); + outputProjPoints.setText( + MessageManager.getString("label.output_transformed_points")); + outputProjPoints.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + outputProjPoints_actionPerformed(); + } + }); + JMenuItem print = new JMenuItem(); + print.setText(MessageManager.getString("action.print")); + print.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + print_actionPerformed(); + } + }); + JMenuItem outputAlignment = new JMenuItem(); + outputAlignment.setText( + MessageManager.getString("label.output_alignment")); + outputAlignment.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + outputAlignment_actionPerformed(); + } + }); + viewMenu.setText(MessageManager.getString("action.view")); + viewMenu.addMenuListener(new MenuListener() + { + @Override + public void menuSelected(MenuEvent e) + { + viewMenu_menuSelected(); + } + + @Override + public void menuDeselected(MenuEvent e) + { + } + + @Override + public void menuCanceled(MenuEvent e) + { + } + }); + showLabels.setText(MessageManager.getString("label.show_labels")); + showLabels.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + showLabels_actionPerformed(); + } + }); + JMenuItem bgcolour = new JMenuItem(); + bgcolour.setText(MessageManager.getString("action.background_colour")); + bgcolour.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + bgcolour_actionPerformed(); + } + }); + originalSeqData = new JMenuItem(); + originalSeqData.setText(MessageManager.getString("label.input_data")); + originalSeqData.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + originalSeqData_actionPerformed(); + } + }); + associateViewsMenu.setText( + MessageManager.getString("label.associate_nodes_with")); + + statusPanel.setLayout(new GridLayout()); + statusBar.setFont(VERDANA_12); + // statusPanel.setBackground(Color.lightGray); + // statusBar.setBackground(Color.lightGray); + // statusPanel.add(statusBar, null); + JPanel panelBar = new JPanel(new BorderLayout()); + panelBar.add(jPanel2, BorderLayout.NORTH); + panelBar.add(statusPanel, BorderLayout.SOUTH); + this.getContentPane().add(panelBar, BorderLayout.SOUTH); + jPanel2.add(jLabel1, null); + jPanel2.add(xCombobox, null); + jPanel2.add(jLabel2, null); + jPanel2.add(yCombobox, null); + jPanel2.add(jLabel3, null); + jPanel2.add(zCombobox, null); + jPanel2.add(resetButton, null); + + JMenuBar jMenuBar1 = new JMenuBar(); + jMenuBar1.add(fileMenu); + jMenuBar1.add(viewMenu); + setJMenuBar(jMenuBar1); + fileMenu.add(saveMenu); + fileMenu.add(outputValues); + fileMenu.add(print); + fileMenu.add(originalSeqData); + fileMenu.add(outputPoints); + fileMenu.add(outputProjPoints); + fileMenu.add(outputAlignment); + saveMenu.add(eps); + saveMenu.add(png); + viewMenu.add(showLabels); + viewMenu.add(bgcolour); + viewMenu.add(associateViewsMenu); + } + + protected void resetButton_actionPerformed() + { + } + + protected void outputPoints_actionPerformed() + { + } + + protected void outputProjPoints_actionPerformed() + { + } + + protected void outputAlignment_actionPerformed() + { + } + + public void makePCAImage(TYPE imageType) + { + } + + protected void outputValues_actionPerformed() + { + } + + protected void print_actionPerformed() + { + } + + protected void showLabels_actionPerformed() + { + } + + protected void bgcolour_actionPerformed() + { + } + + protected void originalSeqData_actionPerformed() + { + } + + protected void viewMenu_menuSelected() + { + } + + protected void doDimensionChange() + { + } +} -- 1.7.10.2