import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
-
/**
* Provides the behaviors for the Structure chooser Panel
*
}
else
{
- mainFrame
-.setTitle("Structure Chooser - Manual association");
+ mainFrame.setTitle("Structure Chooser - Manual association");
if (errors.size() > 0)
{
StringBuilder errorMsg = new StringBuilder();
String chain = pdbEntry.getChainCode() == null ? "_" : pdbEntry
.getChainCode();
Object[] pdbEntryRowData = new Object[]
- { seq, pdbEntry.getId(),
- chain,
- pdbEntry.getType(),
+ { seq, pdbEntry.getId(), chain, pdbEntry.getType(),
pdbEntry.getFile() };
if (pdbEntry.getFile() != null)
{
tableModel.addRow(pdbEntryRowData);
}
- cachedEntryMap.put(pdbEntry.getId().toLowerCase(),
- pdbEntry);
+ cachedEntryMap.put(pdbEntry.getId().toLowerCase(), pdbEntry);
}
}
}
filterThread.start();
}
-
/**
* Handles action event for btn_pdbFromFile
*/
.getCmb_assSeq().getSelectedItem();
lbl_fromFileStatus.setIcon(errorImage);
if (selectedSequences.length == 1
- || (assSeqOpt != null
- && !assSeqOpt.getName().equalsIgnoreCase(
+ || (assSeqOpt != null && !assSeqOpt.getName().equalsIgnoreCase(
"-Select Associated Seq-")))
{
btn_pdbFromFile.setEnabled(true);
launchStructureViewer(ap.getStructureSelectionManager(),
pdbEntriesToView, ap, selectedSeqs);
}
- else if(currentView == VIEWS_LOCAL_PDB){
+ else if (currentView == VIEWS_LOCAL_PDB)
+ {
int[] selectedRows = tbl_local_pdb.getSelectedRows();
PDBEntry[] pdbEntriesToView = new PDBEntry[selectedRows.length];
int count = 0;
for (int row : selectedRows)
{
String entryKey = tbl_local_pdb.getValueAt(row, pdbIdColIndex)
- .toString()
- .toLowerCase();
+ .toString().toLowerCase();
pdbEntriesToView[count++] = cachedEntryMap.get(entryKey);
SequenceI selectedSeq = (SequenceI) tbl_local_pdb.getValueAt(row,
refSeqColIndex);
selectedSequence = userSelectedSeq;
}
PDBEntry fileEntry = new AssociatePdbFileWithSeq()
- .associatePdbWithSeq(
- selectedPdbFileName, jalview.io.AppletFormatAdapter.FILE,
- selectedSequence, true, Desktop.instance);
+ .associatePdbWithSeq(selectedPdbFileName,
+ jalview.io.AppletFormatAdapter.FILE,
+ selectedSequence, true, Desktop.instance);
launchStructureViewer(ap.getStructureSelectionManager(),
new PDBEntry[]
mainFrame.dispose();
}
- private void launchStructureViewer(StructureSelectionManager ssm,
- PDBEntry[] pdbEntriesToView, AlignmentPanel alignPanel,
- SequenceI[] sequences)
+ private void launchStructureViewer(final StructureSelectionManager ssm,
+ final PDBEntry[] pdbEntriesToView,
+ final AlignmentPanel alignPanel, final SequenceI[] sequences)
{
- StructureViewer sViewer = new StructureViewer(ssm);
- if (pdbEntriesToView.length > 1)
+ final StructureViewer sViewer = new StructureViewer(ssm);
+ new Thread(new Runnable()
{
- ArrayList<SequenceI[]> seqsMap = new ArrayList<SequenceI[]>();
- for (SequenceI seq : sequences)
+ public void run()
{
- seqsMap.add(new SequenceI[]
- { seq });
+ if (pdbEntriesToView.length > 1)
+ {
+ ArrayList<SequenceI[]> seqsMap = new ArrayList<SequenceI[]>();
+ for (SequenceI seq : sequences)
+ {
+ seqsMap.add(new SequenceI[]
+ { seq });
+ }
+ SequenceI[][] collatedSeqs = seqsMap.toArray(new SequenceI[0][0]);
+ sViewer.viewStructures(pdbEntriesToView, collatedSeqs, alignPanel);
+ // sViewer.viewStructures(pdbEntriesToView,
+ // alignPanel.av.collateForPDB(pdbEntriesToView),
+ // alignPanel);
+ }
+ else
+ {
+ sViewer.viewStructures(pdbEntriesToView[0], sequences, alignPanel);
+ }
}
- SequenceI[][] collatedSeqs = seqsMap.toArray(new SequenceI[0][0]);
- sViewer.viewStructures(pdbEntriesToView, collatedSeqs,
- alignPanel);
- // sViewer.viewStructures(pdbEntriesToView,
- // alignPanel.av.collateForPDB(pdbEntriesToView),
- // alignPanel);
- }
- else
- {
- sViewer.viewStructures(pdbEntriesToView[0], sequences,
- alignPanel);
- }
+ }).start();
}
/**