Clover icon

jalviewX

  1. Project Clover database Wed Oct 31 2018 15:13:58 GMT
  2. Package jalview.gui

File JalviewChimeraBindingModel.java

 

Coverage histogram

../../img/srcFileCovDistChart0.png
56% of files have more coverage

Code metrics

12
22
12
1
143
104
18
0.82
1.83
12
1.5

Classes

Class Line # Actions
JalviewChimeraBindingModel 33 22 18 46
0.00%
 

Contributing tests

No tests hitting this source file were found.

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.gui;
22   
23    import jalview.api.AlignmentViewPanel;
24    import jalview.api.structures.JalviewStructureDisplayI;
25    import jalview.datamodel.PDBEntry;
26    import jalview.datamodel.SequenceI;
27    import jalview.ext.rbvi.chimera.JalviewChimeraBinding;
28    import jalview.io.DataSourceType;
29    import jalview.structure.StructureSelectionManager;
30   
31    import javax.swing.SwingUtilities;
32   
 
33    public class JalviewChimeraBindingModel extends JalviewChimeraBinding
34    {
35    private ChimeraViewFrame cvf;
36   
 
37  0 toggle public JalviewChimeraBindingModel(ChimeraViewFrame chimeraViewFrame,
38    StructureSelectionManager ssm, PDBEntry[] pdbentry,
39    SequenceI[][] sequenceIs, DataSourceType protocol)
40    {
41  0 super(ssm, pdbentry, sequenceIs, protocol);
42  0 cvf = chimeraViewFrame;
43    }
44   
 
45  0 toggle @Override
46    public FeatureRenderer getFeatureRenderer(AlignmentViewPanel alignment)
47    {
48  0 AlignmentPanel ap = (alignment == null) ? cvf.getAlignmentPanel()
49    : (AlignmentPanel) alignment;
50  0 if (ap.av.isShowSequenceFeatures())
51    {
52  0 return ap.getSeqPanel().seqCanvas.fr;
53    }
54   
55  0 return null;
56    }
57   
 
58  0 toggle @Override
59    public jalview.api.SequenceRenderer getSequenceRenderer(
60    AlignmentViewPanel alignment)
61    {
62  0 return new SequenceRenderer(((AlignmentPanel) alignment).av);
63    }
64   
 
65  0 toggle @Override
66    public void refreshGUI()
67    {
68  0 javax.swing.SwingUtilities.invokeLater(new Runnable()
69    {
 
70  0 toggle @Override
71    public void run()
72    {
73  0 cvf.updateTitleAndMenus();
74  0 cvf.revalidate();
75    }
76    });
77    }
78   
 
79  0 toggle @Override
80    public void updateColours(Object source)
81    {
82  0 AlignmentPanel ap = (AlignmentPanel) source;
83    // ignore events from panels not used to colour this view
84  0 if (!cvf.isUsedforcolourby(ap))
85    {
86  0 return;
87    }
88  0 if (!isLoadingFromArchive())
89    {
90  0 colourBySequence(ap);
91    }
92    }
93   
 
94  0 toggle @Override
95    public void releaseReferences(Object svl)
96    {
97    }
98   
 
99  0 toggle @Override
100    protected void releaseUIResources()
101    {
102    }
103   
 
104  0 toggle @Override
105    public void refreshPdbEntries()
106    {
107    }
108   
109    /**
110    * Send an asynchronous command to Chimera, in a new thread, optionally with
111    * an 'in progress' message in a progress bar somewhere
112    */
 
113  0 toggle @Override
114    protected void sendAsynchronousCommand(final String command,
115    final String progressMsg)
116    {
117  0 final long handle = progressMsg == null ? 0
118    : cvf.startProgressBar(progressMsg);
119  0 SwingUtilities.invokeLater(new Runnable()
120    {
 
121  0 toggle @Override
122    public void run()
123    {
124  0 try
125    {
126  0 sendChimeraCommand(command, false);
127    } finally
128    {
129  0 if (progressMsg != null)
130    {
131  0 cvf.stopProgressBar(null, handle);
132    }
133    }
134    }
135    });
136    }
137   
 
138  0 toggle @Override
139    public JalviewStructureDisplayI getViewer()
140    {
141  0 return cvf;
142    }
143    }