From d18d71f7fd61e73eb89fc10b9a4c2b8d83f6c59c Mon Sep 17 00:00:00 2001 From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04> Date: Mon, 30 Jul 2007 08:54:01 +0000 Subject: [PATCH] updates git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@6259 ee4ac58c-ac51-4696-9907-e4b3aa274f04 --- .../genebuilder/ortholog/MatchPanel.java | 39 +++++++++++-------- .../genebuilder/ortholog/OrthologTable.java | 29 ++++++++++++-- 2 files changed, 47 insertions(+), 21 deletions(-) diff --git a/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java b/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java index 148916aec..54cb2e54e 100644 --- a/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java +++ b/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java,v 1.10 2007-07-24 08:41:12 tjc Exp $ + * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/components/genebuilder/ortholog/MatchPanel.java,v 1.11 2007-07-30 08:54:01 tjc Exp $ */ package uk.ac.sanger.artemis.components.genebuilder.ortholog; @@ -61,7 +61,11 @@ public class MatchPanel extends JPanel private Vector editableComponents; private JButton hide_show_ortho; private JButton hide_show_sim; - + private static String ORTHOLOG = "orthologous_to"; + private static String PARALOG = "paralogous_to"; + private static String SIMILARITY = "similarity"; + private static String[] SO_CLUSTER_NAMES = + { ORTHOLOG, PARALOG, SIMILARITY }; public MatchPanel(final Feature feature) { @@ -85,23 +89,21 @@ public class MatchPanel extends JPanel * @param qualifierName * @return */ - public boolean isMatchTag(String qualifierName) + public static boolean isMatchTag(final String qualifierName) { - if(qualifierName.startsWith("/")) - qualifierName = qualifierName.substring(1); - - if(qualifierName.startsWith("ortholog") || - qualifierName.startsWith("similarity")) - return true; + for(int i=0; i<SO_CLUSTER_NAMES.length;i++) + if(qualifierName.equals(SO_CLUSTER_NAMES[i]) || + qualifierName.equals(SO_CLUSTER_NAMES[i]+"=")) + return true; return false; } private Component createMatchQualifiersComponent(final Feature feature) { editableComponents = new Vector(); - final Qualifier orthoQualifier = matchQualifiers.getQualifierByName("ortholog"); - final Qualifier paraQualifier = matchQualifiers.getQualifierByName("paralog"); - final Qualifier simQualifier = matchQualifiers.getQualifierByName("similarity"); + final Qualifier orthoQualifier = matchQualifiers.getQualifierByName(ORTHOLOG); + final Qualifier paraQualifier = matchQualifiers.getQualifierByName(PARALOG); + final Qualifier simQualifier = matchQualifiers.getQualifierByName(SIMILARITY); if(databases == null) { @@ -133,7 +135,7 @@ public class MatchPanel extends JPanel if(select == JOptionPane.CANCEL_OPTION) return; - add("ortholog", ((String)dbs.getSelectedItem())+":"+ + add(ORTHOLOG, ((String)dbs.getSelectedItem())+":"+ accession.getText().trim(), feature); } }); @@ -146,8 +148,11 @@ public class MatchPanel extends JPanel /// /// temp /// - //if(orthoQualifier != null) - //{ + if(orthoQualifier != null) + { + if(orthoQualifier instanceof QualifierLazyLoading) + ((QualifierLazyLoading)orthoQualifier).setForceLoad(true); + } if(hide_show_ortho == null) hide_show_ortho = new JButton("-"); @@ -185,7 +190,7 @@ public class MatchPanel extends JPanel if(select == JOptionPane.CANCEL_OPTION) return; - add("paralog", ((String)dbs.getSelectedItem())+":"+ + add(PARALOG, ((String)dbs.getSelectedItem())+":"+ accession.getText().trim(), feature); } }); @@ -225,7 +230,7 @@ public class MatchPanel extends JPanel if(select == JOptionPane.CANCEL_OPTION) return; - add("similarity", accession.getText().trim(), feature); + add(SIMILARITY, accession.getText().trim(), feature); } }); xBox = Box.createHorizontalBox(); diff --git a/uk/ac/sanger/artemis/components/genebuilder/ortholog/OrthologTable.java b/uk/ac/sanger/artemis/components/genebuilder/ortholog/OrthologTable.java index 8f2ca093a..99c9b71a3 100644 --- a/uk/ac/sanger/artemis/components/genebuilder/ortholog/OrthologTable.java +++ b/uk/ac/sanger/artemis/components/genebuilder/ortholog/OrthologTable.java @@ -54,10 +54,11 @@ import uk.ac.sanger.artemis.Feature; import uk.ac.sanger.artemis.io.PartialSequence; import uk.ac.sanger.artemis.io.Qualifier; import uk.ac.sanger.artemis.util.DatabaseDocument; +import uk.ac.sanger.artemis.util.StringVector; public class OrthologTable extends AbstractMatchTable { - private int NUMBER_COLUMNS = 3; + private static int NUMBER_COLUMNS = 3; private Vector rowData = new Vector(); private Vector tableData = new Vector(NUMBER_COLUMNS); private JTable orthologTable; @@ -66,7 +67,6 @@ public class OrthologTable extends AbstractMatchTable // // column headings - final static String ORGANISM_COL = "Organism"; final static String ORTHO_COL = "Ortholog"; final static String DESCRIPTION_COL = "Description"; final static String REMOVE_BUTTON_COL = ""; @@ -92,6 +92,23 @@ public class OrthologTable extends AbstractMatchTable tableData.setElementAt(REMOVE_BUTTON_COL,2); // add row data + if(origQualifier != null) + { + int columnIndex; + StringVector values = origQualifier.getValues(); + for(int i=0; i<values.size(); i++) + { + StringVector rowStr = StringVector.getStrings((String)values.get(i), ";"); + Vector thisRowData = new Vector(NUMBER_COLUMNS); + thisRowData.setSize(NUMBER_COLUMNS); + + columnIndex = tableData.indexOf(ORTHO_COL); + thisRowData.setElementAt((String)rowStr.get(0), columnIndex); + columnIndex = tableData.indexOf(DESCRIPTION_COL); + thisRowData.setElementAt("blah", columnIndex); + rowData.add(thisRowData); + } + } Vector thisRowData = new Vector(); thisRowData.add("Bpseudomallei:BPSL0003"); thisRowData.add("blah blah"); @@ -236,8 +253,12 @@ public class OrthologTable extends AbstractMatchTable */ protected String updateQualifierString(int row) { - // TODO Auto-generated method stub - return null; + StringBuffer orthologStr = new StringBuffer( + (String)getTable().getValueAt(row, getColumnIndex(ORTHO_COL)) ); // ortholog link + orthologStr.append(";"); + orthologStr.append( + (String)getTable().getValueAt(row, getColumnIndex(DESCRIPTION_COL)) ); // description + return orthologStr.toString(); } -- GitLab