Skip to content
Snippets Groups Projects
Commit 5fc7fd65 authored by tjc's avatar tjc
Browse files

updates

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@6194 ee4ac58c-ac51-4696-9907-e4b3aa274f04
parent 78039e64
No related branches found
No related tags found
No related merge requests found
......@@ -57,17 +57,52 @@ import uk.ac.sanger.artemis.editor.BrowserControl;
import uk.ac.sanger.artemis.editor.DataCollectionPane;
import uk.ac.sanger.artemis.io.DatabaseDocumentEntry;
import uk.ac.sanger.artemis.io.EntryInformationException;
import uk.ac.sanger.artemis.io.Qualifier;
import uk.ac.sanger.artemis.io.QualifierVector;
import uk.ac.sanger.artemis.util.DatabaseDocument;
import uk.ac.sanger.artemis.util.StringVector;
abstract class AbstractMatchTable
{
protected boolean isChanged = false;
protected JTable table;
protected Qualifier origQualifier;
protected abstract String updateQualifierString(int row);
/**
* Determine if qualifiers have changed
*/
protected boolean isQualifierChanged()
{
return isChanged;
}
/**
* Update the qualifiers from the entries in the table
* @param qv
*/
protected void updateQualifier(final QualifierVector qv)
{
StringVector values = origQualifier.getValues();
values.removeAllElements();
if(getTable().getRowCount() < 1)
return;
protected abstract boolean isQualifierChanged();
protected abstract void updateQualifier(final QualifierVector qv);
System.out.println("\nHERE:\n");
for(int i=0; i<getTable().getRowCount(); i++)
{
String updatedQualifierString = updateQualifierString(i);
values.add(updatedQualifierString);
System.out.println(updatedQualifierString);
}
System.out.println("\n\n");
int index = qv.indexOfQualifierWithName(origQualifier.getName());
origQualifier = new Qualifier(origQualifier.getName(), values);
qv.remove(index);
qv.add(index, origQualifier);
}
public void setTable(JTable table)
{
......
......@@ -26,7 +26,6 @@ import java.awt.Component;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
......@@ -38,6 +37,7 @@ import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
import javax.swing.JTextArea;
......@@ -62,8 +62,6 @@ public class OrthologTable extends AbstractMatchTable
private Vector tableData = new Vector(NUMBER_COLUMNS);
private JTable orthologTable;
private JButton infoLevelButton = new JButton("Details");
private Qualifier origQualifier;
private boolean isChanged = false;
private JPopupMenu popupMenu = new JPopupMenu();
//
......@@ -191,42 +189,50 @@ public class OrthologTable extends AbstractMatchTable
{
public void actionPerformed(ActionEvent e)
{
int[] rows = orthologTable.getSelectedRows();
int column = getColumnIndex(ORTHO_COL);
Vector seqs = new Vector();
final int[] rows = orthologTable.getSelectedRows();
final int column = getColumnIndex(ORTHO_COL);
final Vector seqs = new Vector();
for(int row=0; row<rows.length; row++)
{
String ortho = (String)orthologTable.getValueAt(row, column);
final String reference[] = ortho.split(":");
DatabaseDocument newdoc = new DatabaseDocument(doc,
reference[0], reference[1], true);
try
{
PartialSequence sequence = newdoc.getChadoSequence(reference[1]);
seqs.add(new org.emboss.jemboss.editor.Sequence(
ortho, new String(sequence.getSequence())));
seqs.add(new org.emboss.jemboss.editor.Sequence(ortho, new String(
sequence.getSequence())));
}
catch(NullPointerException npe)
{
JOptionPane.showMessageDialog(null,
"Cannot get the sequence for "+ortho,
"Warning", JOptionPane.WARNING_MESSAGE);
}
}
org.emboss.jemboss.editor.AlignJFrame ajFrame =
new org.emboss.jemboss.editor.AlignJFrame(seqs);
ajFrame.pack();
ajFrame.setVisible(true);
}
});
}
protected boolean isQualifierChanged()
{
// TODO Auto-generated method stub
return false;
}
protected void updateQualifier(QualifierVector qv)
/**
* Called by AbstractMatchTable.updateQualifier()
*/
protected String updateQualifierString(int row)
{
// TODO Auto-generated method stub
return null;
}
/**
* Renderer for the Ortholog cells
*/
......
......@@ -46,7 +46,6 @@ import javax.swing.table.TableColumn;
import javax.swing.table.TableModel;
import uk.ac.sanger.artemis.io.Qualifier;
import uk.ac.sanger.artemis.io.QualifierVector;
import uk.ac.sanger.artemis.util.StringVector;
public class SimilarityTable extends AbstractMatchTable
......@@ -56,7 +55,7 @@ public class SimilarityTable extends AbstractMatchTable
private Vector tableData = new Vector(NUMBER_COLUMNS);
private JButton infoLevelButton = new JButton("Details");
private Qualifier origQualifier;
//
// column headings
......@@ -338,35 +337,11 @@ public class SimilarityTable extends AbstractMatchTable
return infoLevelButton;
}
protected boolean isQualifierChanged()
{
return isChanged;
}
protected void updateQualifier(QualifierVector qv)
{
StringVector values = origQualifier.getValues();
values.removeAllElements();
if(getTable().getRowCount() < 1)
return;
System.out.println("\nHERE:\n");
for(int i=0; i<getTable().getRowCount(); i++)
{
String updatedQualifierString = updateQualifierString(i);
values.add(updatedQualifierString);
System.out.println(updatedQualifierString);
}
System.out.println("\n\n");
int index = qv.indexOfQualifierWithName(origQualifier.getName());
origQualifier = new Qualifier(origQualifier.getName(), values);
qv.remove(index);
qv.add(index, origQualifier);
}
private String updateQualifierString(final int row)
/**
* Called by AbstractMatchTable.updateQualifier()
*/
protected String updateQualifierString(final int row)
{
StringBuffer similarityStr = new StringBuffer(
(String)getTable().getValueAt(row, getColumnIndex(METHOD_COL)) ); // method
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment