Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 7ce014f

Browse filesBrowse files
committed
Update to Jmol 14.6.1
Also switches Jmol logging to SLF4J
1 parent aaaa2e8 commit 7ce014f
Copy full SHA for 7ce014f

4 files changed

+95-82Lines changed: 95 additions & 82 deletions

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎biojava-structure-gui/pom.xml‎

Copy file name to clipboardExpand all lines: biojava-structure-gui/pom.xml
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
<dependency>
4343
<groupId>net.sourceforge.jmol</groupId>
4444
<artifactId>jmol</artifactId>
45-
<version>13.0.14</version>
45+
<version>14.6.1_2016.08.20</version>
4646
</dependency>
4747
<!-- logging dependencies (managed by parent pom, don't set versions or
4848
scopes here) -->
Collapse file

‎biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/AbstractAlignmentJmol.java‎

Copy file name to clipboardExpand all lines: biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/AbstractAlignmentJmol.java
+4-3Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import org.biojava.nbio.structure.jama.Matrix;
4242
import org.jcolorbrewer.ColorBrewer;
4343
import org.jmol.api.JmolViewer;
44+
import org.jmol.viewer.Viewer;
4445
import org.slf4j.Logger;
4546
import org.slf4j.LoggerFactory;
4647

@@ -102,7 +103,7 @@ public void destroy(){
102103
public void setAtoms(Atom[] atoms){
103104
Structure s = new StructureImpl();
104105
Chain c = new ChainImpl();
105-
c.setChainID("A");
106+
c.setId("A");
106107
for (Atom a: atoms){
107108
c.addGroup(a.getGroup());
108109
}
@@ -219,7 +220,7 @@ public void mouseMoved(MouseEvent e) {
219220
int pos = viewer.findNearestAtomIndex( e.getX(), e.getY() );
220221
if ( pos == -1 ) { return ; }
221222

222-
String atomInfo = viewer.getAtomInfo(pos);
223+
String atomInfo = ((Viewer) viewer).getAtomInfo(pos);
223224
text.setText(atomInfo);
224225

225226
}
@@ -243,7 +244,7 @@ public void mouseReleased(MouseEvent e) {
243244
int pos = viewer.findNearestAtomIndex(e.getX(), e.getY());
244245
if (pos == -1) return;
245246

246-
String atomInfo = viewer.getAtomInfo(pos);
247+
String atomInfo = ((Viewer) viewer).getAtomInfo(pos);
247248
status.setText("clicked: " + atomInfo);
248249
AtomInfo ai = AtomInfoParser.parse(atomInfo);
249250

Collapse file

‎biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/JmolPanel.java‎

Copy file name to clipboardExpand all lines: biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/JmolPanel.java
+65-19Lines changed: 65 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,12 @@
3838
import org.jmol.api.JmolAdapter;
3939
import org.jmol.api.JmolStatusListener;
4040
import org.jmol.api.JmolViewer;
41-
import org.jmol.util.Logger;
41+
import org.jmol.util.LoggerInterface;
42+
import org.slf4j.Logger;
43+
import org.slf4j.LoggerFactory;
4244

4345
import javax.swing.*;
46+
4447
import java.awt.*;
4548
import java.awt.event.ActionEvent;
4649
import java.awt.event.ActionListener;
@@ -52,6 +55,8 @@ public class JmolPanel
5255
extends JPrintPanel
5356
implements ActionListener
5457
{
58+
private static final Logger logger = LoggerFactory.getLogger(JmolPanel.class);
59+
5560
private static final long serialVersionUID = -3661941083797644242L;
5661

5762
private JmolViewer viewer;
@@ -62,13 +67,13 @@ public class JmolPanel
6267

6368
Structure structure;
6469

65-
private boolean verbose = false;
66-
6770
public JmolPanel() {
6871
super();
6972
statusListener = new MyJmolStatusListener();
7073
adapter = new SmarterJmolAdapter();
71-
Logger.setLogLevel( verbose?Logger.LEVEL_INFO:Logger.LEVEL_ERROR);
74+
JmolLoggerAdapter jmolLogger = new JmolLoggerAdapter(LoggerFactory.getLogger(org.jmol.api.JmolViewer.class));
75+
org.jmol.util.Logger.setLogger(jmolLogger);
76+
org.jmol.util.Logger.setLogLevel( jmolLogger.getLogLevel() );
7277
viewer = JmolViewer.allocateViewer(this,
7378
adapter,
7479
null,null,null,null,
@@ -173,7 +178,8 @@ public void actionPerformed(ActionEvent event) {
173178
return;
174179
}
175180

176-
JComboBox source = (JComboBox) event.getSource();
181+
@SuppressWarnings("unchecked")
182+
JComboBox<String> source = (JComboBox<String>) event.getSource();
177183
String value = source.getSelectedItem().toString();
178184
evalString("save selection; ");
179185

@@ -267,7 +273,7 @@ private void colorBySCOP() {
267273
List<String>ranges = domain.getRanges();
268274

269275
for (String range : ranges){
270-
if(verbose) System.out.println(range);
276+
logger.debug(range);
271277
String[] spl = range.split(":");
272278
String script = " select ";
273279
if ( spl.length > 1 )
@@ -276,7 +282,7 @@ private void colorBySCOP() {
276282
script += "*" + spl[0]+"/1;";
277283
script += " color [" + c1.getRed() + ","+c1.getGreen() + "," +c1.getBlue()+"];";
278284
script += " color cartoon [" + c1.getRed() + ","+c1.getGreen() + "," +c1.getBlue()+"] ;";
279-
if(verbose) System.out.println(script);
285+
logger.debug(script);
280286
evalString(script);
281287

282288
}
@@ -286,7 +292,7 @@ private void colorBySCOP() {
286292
}
287293

288294
private void colorByPDP() {
289-
if(verbose) System.out.println("colorByPDP");
295+
logger.debug("colorByPDP");
290296
if ( structure == null)
291297
return;
292298

@@ -310,13 +316,13 @@ private void colorByPDP() {
310316
int end = s.getTo();
311317
Group startG = ca[start].getGroup();
312318
Group endG = ca[end].getGroup();
313-
if(verbose) System.out.println(" Segment: " +startG.getResidueNumber() +":" + startG.getChainId() + " - " + endG.getResidueNumber()+":"+endG.getChainId() + " " + s);
319+
logger.debug(" Segment: " +startG.getResidueNumber() +":" + startG.getChainId() + " - " + endG.getResidueNumber()+":"+endG.getChainId() + " " + s);
314320
String j1 = startG.getResidueNumber()+"";
315321
String j2 = endG.getResidueNumber()+":"+endG.getChainId();
316322
String script = " select " +j1 +"-" +j2 +"/1;";
317323
script += " color [" + c1.getRed() + ","+c1.getGreen() + "," +c1.getBlue()+"];";
318324
script += " color cartoon [" + c1.getRed() + ","+c1.getGreen() + "," +c1.getBlue()+"] ;";
319-
if(verbose) System.out.println(script);
325+
logger.debug(script);
320326
evalString(script);
321327
}
322328

@@ -356,15 +362,55 @@ public void destroy(){
356362
adapter = null;
357363
}
358364

359-
public boolean isVerbose() {
360-
return verbose;
361-
}
362-
363-
public void setVerbose(boolean verbose) {
364-
this.verbose = verbose;
365-
if(statusListener instanceof MyJmolStatusListener) {
366-
((MyJmolStatusListener)statusListener).setVerbose(verbose);
365+
public static class JmolLoggerAdapter implements LoggerInterface {
366+
private Logger slf;
367+
public JmolLoggerAdapter(Logger slf) {
368+
this.slf=slf;
369+
}
370+
public int getLogLevel() {
371+
if( slf.isTraceEnabled() )
372+
return org.jmol.util.Logger.LEVEL_MAX;
373+
if( slf.isDebugEnabled() )
374+
return org.jmol.util.Logger.LEVEL_DEBUG;
375+
if( slf.isInfoEnabled() )
376+
return org.jmol.util.Logger.LEVEL_INFO;
377+
if( slf.isWarnEnabled() )
378+
return org.jmol.util.Logger.LEVEL_WARN;
379+
if( slf.isErrorEnabled() )
380+
return org.jmol.util.Logger.LEVEL_ERROR;
381+
throw new IllegalStateException("Unknown SLF4J error level");
382+
}
383+
@Override
384+
public void debug(String txt) {
385+
slf.debug(txt);
386+
}
387+
@Override
388+
public void info(String txt) {
389+
slf.info(txt);
390+
}
391+
@Override
392+
public void warn(String txt) {
393+
slf.warn(txt);
394+
}
395+
@Override
396+
public void warnEx(String txt, Throwable e) {
397+
slf.warn(txt,e);
398+
}
399+
@Override
400+
public void error(String txt) {
401+
slf.error(txt);
402+
}
403+
@Override
404+
public void errorEx(String txt, Throwable e) {
405+
slf.error(txt,e);
406+
}
407+
@Override
408+
public void fatal(String txt) {
409+
slf.error(txt);
410+
}
411+
@Override
412+
public void fatalEx(String txt, Throwable e) {
413+
slf.error(txt,e);
367414
}
368415
}
369-
370416
}
Collapse file

‎biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/MyJmolStatusListener.java‎

Copy file name to clipboardExpand all lines: biojava-structure-gui/src/main/java/org/biojava/nbio/structure/align/gui/jmol/MyJmolStatusListener.java
+25-59Lines changed: 25 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,17 @@
2424

2525
package org.biojava.nbio.structure.align.gui.jmol;
2626

27-
import org.jmol.api.JmolStatusListener;
28-
import org.jmol.constant.EnumCallback;
27+
import java.util.Map;
2928

30-
import javax.swing.*;
29+
import javax.swing.JTextField;
3130

32-
import java.util.Hashtable;
33-
import java.util.Map;
31+
import org.jmol.api.JmolStatusListener;
32+
import org.jmol.c.CBK;
33+
import org.slf4j.Logger;
34+
import org.slf4j.LoggerFactory;
3435

3536
public class MyJmolStatusListener implements JmolStatusListener {
36-
37-
private boolean verbose = false;
37+
private static final Logger logger = LoggerFactory.getLogger(MyJmolStatusListener.class);
3838

3939
JTextField status;
4040
public MyJmolStatusListener(){
@@ -46,33 +46,30 @@ public void setTextField (JTextField statusField) {
4646

4747
@Override
4848
public String createImage(String arg0, String arg1, Object arg2, int arg3) {
49-
// TODO Auto-generated method stub
50-
return null;
49+
return null; //Cancelled
5150
}
5251

5352
@Override
5453
public String eval(String arg0) {
55-
if(verbose) System.out.println("eval " + arg0);
54+
logger.debug("eval {}",arg0);
5655
return null;
5756
}
5857

5958
@Override
6059
public float[][] functionXY(String arg0, int arg1, int arg2) {
61-
if(verbose) System.out.println("XY " + arg0 + " " + arg1 + " " + arg2);
62-
return null;
60+
logger.debug("XY {} {} {}",arg0,arg1, arg2);
61+
return null; //Ignore isosurface commands
6362
}
6463

6564
@Override
6665
public float[][][] functionXYZ(String arg0, int arg1, int arg2, int arg3) {
67-
// TODO Auto-generated method stub
68-
return null;
66+
logger.debug("XYZ {} {} {} {}",arg0,arg1, arg2, arg3);
67+
return null; //Ignore isosurface commands
6968
}
7069

71-
@SuppressWarnings({ "unchecked", "rawtypes" })
7270
@Override
73-
public Hashtable getRegistryInfo() {
74-
// TODO Auto-generated method stub
75-
return null;
71+
public Map<String, Object> getRegistryInfo() {
72+
return null; //Ignore
7673
}
7774

7875
@Override
@@ -87,79 +84,48 @@ public void notifyCallback(int arg0, Object[] arg1) {
8784
}
8885

8986
public boolean notifyEnabled(int arg0) {
90-
// TODO Auto-generated method stub
9187
return false;
9288
}
9389

9490
@Override
9591
public void setCallbackFunction(String arg0, String arg1) {
96-
if(verbose) System.out.println("callback:" + arg0 + " " + arg1);
92+
logger.debug("callback: {} {}", arg0, arg1);
9793
status.setText(arg0 + " " + arg1);
98-
9994
}
10095

10196
public String dialogAsk(String arg0, String arg1) {
102-
// TODO Auto-generated method stub
103-
if(verbose) System.out.println("dialogAsk");
104-
return null;
97+
logger.debug("dialogAsk {} {}",arg0,arg1);
98+
return null; //Ignore
10599
}
106100

107101
public void handlePopupMenu(int arg0, int arg1) {
108-
// TODO Auto-generated method stub
109-
if(verbose) System.out.println("handlePopupMenu");
102+
logger.debug("handlePopupMenu {} {}",arg0,arg1);
110103
}
111104

112105
public void showConsole(boolean arg0) {
113-
114-
// TODO Auto-generated method stub
115-
if(verbose) System.out.println("showConsole");
116-
106+
logger.debug("showConsole {}",arg0);
117107
}
118108

119109

120-
@Override
121-
public void notifyCallback(EnumCallback arg0, Object[] arg1) {
122-
// TODO Auto-generated method stub
123110

111+
@Override
112+
public void notifyCallback(CBK message, Object[] data) {
124113
}
125114

126-
127115
@Override
128-
public boolean notifyEnabled(EnumCallback arg0) {
129-
// TODO Auto-generated method stub
116+
public boolean notifyEnabled(CBK type) {
130117
return false;
131118
}
132119

133-
134120
@Override
135-
public Map<String, Object> getProperty(String arg0) {
136-
// TODO Auto-generated method stub
137-
return null;
138-
}
139-
140-
141-
142121
public Map<String, Object> getJSpecViewProperty(String arg0) {
143-
// TODO Auto-generated method stub
144122
return null;
145123
}
146124

147125

148126
@Override
149-
public void resizeInnerPanel(String data) {
150-
// TODO Auto-generated method stub
151-
152-
}
153-
154-
public boolean isVerbose() {
155-
return verbose;
156-
}
157-
158-
public void setVerbose(boolean verbose) {
159-
this.verbose = verbose;
127+
public int[] resizeInnerPanel(String data) {
128+
return null;
160129
}
161130

162-
163-
164-
165131
}

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.