*/
package jalview.gui;
-import java.awt.Rectangle;
-
import jalview.api.structures.JalviewStructureDisplayI;
import jalview.bin.Cache;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
-import jalview.gui.StructureViewer.Viewer;
import jalview.structure.StructureSelectionManager;
+import java.awt.Rectangle;
+
/**
* proxy for handling structure viewers.
*
public Viewer getViewerType()
{
- String viewType = Cache.getDefault("STRUCTURE_DISPLAY", "JMOL");
+ String viewType = Cache.getDefault(Preferences.STRUCTURE_DISPLAY,
+ Viewer.JMOL.name());
return Viewer.valueOf(viewType);
}
public void setViewerType(Viewer type)
{
- Cache.setProperty("STRUCTURE_DISPLAY", type.toString());
+ Cache.setProperty(Preferences.STRUCTURE_DISPLAY, type.name());
}
public StructureViewer(StructureSelectionManager structureSelectionManager)
{
return viewStructures(getViewerType(), ap, pr, collateForPDB);
}
- public JalviewStructureDisplayI viewStructures(Viewer viewerType,AlignmentPanel ap,
- PDBEntry[] pr, SequenceI[][] collateForPDB)
+
+ public JalviewStructureDisplayI viewStructures(Viewer viewerType,
+ AlignmentPanel ap, PDBEntry[] pr, SequenceI[][] collateForPDB)
{
JalviewStructureDisplayI sview = null;
- if (viewerType.equals(Viewer.JMOL)){
+ if (viewerType.equals(Viewer.JMOL))
+ {
sview = new AppJmol(ap, pr, ap.av.collateForPDB(pr));
- } else
- if (viewerType.equals(Viewer.CHIMERA)) {
+ }
+ else if (viewerType.equals(Viewer.CHIMERA))
+ {
sview = new ChimeraViewFrame(ap, pr, ap.av.collateForPDB(pr));
- }else
+ }
+ else
+ {
+ Cache.log.error("Unknown structure viewer type "
+ + getViewerType().toString());
+ }
+ return sview;
+ }
+
+ public JalviewStructureDisplayI viewStructures(Viewer viewerType,
+ AlignmentPanel ap, PDBEntry pr, SequenceI[] collateForPDB)
+ {
+ JalviewStructureDisplayI sview = null;
+ if (viewerType.equals(Viewer.JMOL))
+ {
+ sview = new AppJmol(pr, collateForPDB, null, ap);
+ }
+ else if (viewerType.equals(Viewer.CHIMERA))
+ {
+ sview = new ChimeraViewFrame(pr, collateForPDB, null, ap);
+ }
+ else
{
Cache.log.error("Unknown structure viewer type "
+ getViewerType().toString());
public JalviewStructureDisplayI viewStructures(PDBEntry pdb,
SequenceI[] sequenceIs, Object object, AlignmentPanel ap)
{
- return viewStructures(ap, new PDBEntry[]
- { pdb }, new SequenceI[][]
- { sequenceIs });
+ return viewStructures(getViewerType(), ap, pdb, sequenceIs);
}
- public JalviewStructureDisplayI createView(Viewer jmol, String[] pdbf,
+ public JalviewStructureDisplayI createView(Viewer viewer, String[] pdbf,
String[] id, SequenceI[][] sq, AlignmentPanel alignPanel,
boolean useinJmolsuperpos, boolean usetoColourbyseq,
boolean jmolColouring, String fileloc, Rectangle rect, String vid)
{
JalviewStructureDisplayI sview = null;
- switch (getViewerType())
+ switch (viewer)
{
case JMOL:
-
sview = new AppJmol(pdbf, id, sq, alignPanel, useinJmolsuperpos,
usetoColourbyseq, jmolColouring, fileloc, rect, vid);
-
break;
case CHIMERA:
+ Cache.log.error("Unsupported structure viewer type "
+ + viewer.toString());
break;
default:
- Cache.log.error("Unknown structure viewer type "
- + getViewerType().toString());
+ Cache.log.error("Unknown structure viewer type " + viewer.toString());
}
return sview;
}