d0353f31439a022ca9d56834944e8438e85456bc
[jalview.git] / src / jalview / gui / ChimeraXViewFrame.java
1 package jalview.gui;
2
3 import jalview.datamodel.PDBEntry;
4 import jalview.datamodel.SequenceI;
5 import jalview.gui.StructureViewer.ViewerType;
6
7 /**
8  * A class for the gui frame through which Jalview interacts with the ChimeraX
9  * structure viewer. Mostly the same as ChimeraViewFrame with a few overrides
10  * for the differences.
11  * 
12  * @author gmcarstairs
13  *
14  */
15 public class ChimeraXViewFrame extends ChimeraViewFrame
16 {
17
18   public ChimeraXViewFrame(PDBEntry pdb, SequenceI[] seqsForPdb,
19           String[] chains, AlignmentPanel ap)
20   {
21     super(pdb, seqsForPdb, chains, ap);
22   }
23
24   public ChimeraXViewFrame(PDBEntry[] pdbsForFile, boolean superposeAdded,
25           SequenceI[][] theSeqs, AlignmentPanel ap)
26   {
27     super(pdbsForFile, superposeAdded, theSeqs, ap);
28   }
29
30   /**
31    * Constructor given a session file to be loaded
32    * 
33    * @param chimeraSessionFile
34    * @param alignPanel
35    * @param pdbArray
36    * @param seqsArray
37    * @param colourByChimera
38    * @param colourBySequence
39    * @param newViewId
40    */
41   public ChimeraXViewFrame(String chimeraSessionFile,
42           AlignmentPanel alignPanel, PDBEntry[] pdbArray,
43           SequenceI[][] seqsArray, boolean colourByChimera,
44           boolean colourBySequence, String newViewId)
45   {
46     super(chimeraSessionFile, alignPanel, pdbArray, seqsArray,
47             colourByChimera, colourBySequence, newViewId);
48   }
49
50   @Override
51   public ViewerType getViewerType()
52   {
53     return ViewerType.CHIMERAX;
54   }
55
56   @Override
57   protected String getViewerName()
58   {
59     return "ChimeraX";
60   }
61
62   @Override
63   protected JalviewChimeraBindingModel newBindingModel(AlignmentPanel ap,
64           PDBEntry[] pdbentrys, SequenceI[][] seqs)
65   {
66     return new JalviewChimeraXBindingModel(this,
67             ap.getStructureSelectionManager(), pdbentrys, seqs, null);
68   }
69
70   @Override
71   protected void initMenus()
72   {
73     super.initMenus();
74
75     viewerActionMenu.setText("ChimeraX");
76   }
77
78 }