import jalview.ext.rbvi.chimera.JalviewChimeraBinding;
import jalview.io.DataSourceType;
import jalview.structure.StructureSelectionManager;
-import jalview.viewmodel.seqfeatures.FeatureRendererModel;
+import javax.swing.JComponent;
import javax.swing.SwingUtilities;
public class JalviewChimeraBindingModel extends JalviewChimeraBinding
{
- private ChimeraViewFrame cvf;
-
public JalviewChimeraBindingModel(ChimeraViewFrame chimeraViewFrame,
StructureSelectionManager ssm, PDBEntry[] pdbentry,
SequenceI[][] sequenceIs, DataSourceType protocol)
{
super(ssm, pdbentry, sequenceIs, protocol);
- cvf = chimeraViewFrame;
- }
-
- @Override
- public FeatureRendererModel getFeatureRenderer(AlignmentViewPanel alignment)
- {
- AlignmentPanel ap = (alignment == null) ? cvf.getAlignmentPanel()
- : (AlignmentPanel) alignment;
- if (ap.av.isShowSequenceFeatures())
- {
- return ap.getSeqPanel().seqCanvas.fr;
- }
-
- return null;
+ setViewer(chimeraViewFrame);
}
@Override
@Override
public void run()
{
- cvf.updateTitleAndMenus();
- cvf.revalidate();
+ JalviewStructureDisplayI theViewer = getViewer();
+ theViewer.updateTitleAndMenus();
+ ((JComponent) theViewer).revalidate();
}
});
}
@Override
public void updateColours(Object source)
{
- AlignmentPanel ap = (AlignmentPanel) source;
+ AlignmentViewPanel ap = (AlignmentViewPanel) source;
// ignore events from panels not used to colour this view
- if (!cvf.isUsedforcolourby(ap))
+ if (!getViewer().isUsedForColourBy(ap))
{
return;
}
final String progressMsg)
{
final long handle = progressMsg == null ? 0
- : cvf.startProgressBar(progressMsg);
+ : getViewer().startProgressBar(progressMsg);
SwingUtilities.invokeLater(new Runnable()
{
@Override
{
if (progressMsg != null)
{
- cvf.stopProgressBar(null, handle);
+ getViewer().stopProgressBar(null, handle);
}
}
}
});
}
-
- @Override
- public JalviewStructureDisplayI getViewer()
- {
- return cvf;
- }
}