From: <ha...@us...> - 2009-10-29 13:11:59
|
Revision: 11644 http://jmol.svn.sourceforge.net/jmol/?rev=11644&view=rev Author: hansonr Date: 2009-10-29 13:11:50 +0000 (Thu, 29 Oct 2009) Log Message: ----------- version=11.9.7_dev jvxl-XML Modified Paths: -------------- trunk/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java trunk/Jmol/src/org/jmol/jvxl/data/JvxlData.java trunk/Jmol/src/org/jmol/jvxl/readers/EfvetReader.java trunk/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java trunk/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java trunk/Jmol/src/org/jmol/jvxl/readers/ObjReader.java trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java trunk/Jmol/src/org/jmol/jvxl/readers/PolygonFileReader.java trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceFileReader.java trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java trunk/Jmol/src/org/jmol/jvxl/readers/VolumeFileReader.java trunk/Jmol/src/org/jmol/shapesurface/Isosurface.java trunk/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java trunk/Jmol/src/org/jmol/util/BinaryDocument.java trunk/Jmol/src/org/openscience/jvxl/simplewriter/SimpleMarchingCubes.java Modified: trunk/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -49,7 +49,6 @@ jvxlData.nPointsX = counts[0]; jvxlData.nPointsY = counts[1]; jvxlData.nPointsZ = counts[2]; - jvxlData.updateInfoLines(); jvxlData.jvxlVolumeDataXml = volumeData.setVolumetricXml(); String msg = null; @@ -85,7 +84,6 @@ String[] title, String msg, boolean includeHeader, int nSurfaces, String state, String comment) { - jvxlData.jvxlInfoLine = TextFormat.simpleReplace(jvxlData.jvxlInfoLine, "asXML=\"false", "asXML=\"true"); StringBuffer data = new StringBuffer(); data.append("<?xml version=\"1.0\"?>\n").append("<jvxl version=\"").append( JVXL_VERSION_XML).append("\" jmolVersion=\"").append(jvxlData.version) @@ -106,7 +104,7 @@ if (jvxlData.jvxlColorData != null && jvxlData.jvxlColorData.length() > 0) type = "mapped " + type; data.append("<jvxlSurface type=\"").append(type).append("\">\n"); - data.append(jvxlData.jvxlInfoLine); + data.append(jvxlGetInfo(jvxlData, true)); data.append("\n"); jvxlAppendCommandState(data, comment, state); if (title != null || msg != null && msg.length() > 0) { @@ -136,13 +134,6 @@ } sb.append("</jvxlSurfaceData>\n"); int len = sb.length(); - if (len > 0) { - if (jvxlData.wasCubic && jvxlData.nBytes > 0) - jvxlData.jvxlCompressionRatio = (int) (((float) jvxlData.nBytes) / len); - else - jvxlData.jvxlCompressionRatio = (int) (((float) (jvxlData.nPointsX - * jvxlData.nPointsY * jvxlData.nPointsZ * 13)) / len); - } data.append(sb); if (jvxlData.vContours != null && jvxlData.vContours.length > 0) { jvxlEncodeContourData(jvxlData.vContours, data); @@ -150,9 +141,18 @@ data.append("</jvxlSurface>\n"); data.append("</jvxlSurfaceSet>\n"); data.append("</jvxl>"); - return data.toString(); + return jvxlSetCompressionRatio(data, jvxlData, len); } + private static String jvxlSetCompressionRatio(StringBuffer data, + JvxlData jvxlData, int len) { + String s = data.toString(); + int r = (int) (jvxlData.nBytes > 0 ? ((float) jvxlData.nBytes) / len + : ((float) (jvxlData.nPointsX + * jvxlData.nPointsY * jvxlData.nPointsZ * 13)) / len); + return TextFormat.simpleReplace(s, "#RATIO#", (r > 0 ? "" + r : "?")); + } + private static void appendXmlEdgeData(StringBuffer sb, JvxlData jvxlData) { sb.append(" "); appendTag(sb, "jvxlEdgeData", " ", new String[] { @@ -284,14 +284,12 @@ appendAttrib(info, "\n ", "valueMappedToRed", "" + jvxlData.valueMappedToRed); appendAttrib(info, "\n ", "valueMappedToBlue", "" + jvxlData.valueMappedToBlue); } - if (jvxlData.jvxlCompressionRatio > 0) - appendAttrib(info, "\n ", "approximateCompressionRatio", "" - + jvxlData.jvxlCompressionRatio + ":1"); + if (jvxlData.insideOut) + appendAttrib(info, "\n ", "insideOut", "true"); if (jvxlData.isXLowToHigh) appendAttrib(info, "\n ", "note", "progressive JVXL+ -- X values read from low(0) to high(" + (jvxlData.nPointsX - 1) + ")"); - if (jvxlData.insideOut) - appendAttrib(info, "\n ", "insideOut", "true"); + appendAttrib(info, "\n ", "approximateCompressionRatio", "#RATIO#:1"); appendAttrib(info, "\n ", "jmolVersion", jvxlData.version); return "<jvxlSurfaceInfo" + info + ">\n</jvxlSurfaceInfo>"; } @@ -307,16 +305,31 @@ /** * contour data are appended to a string buffer in the form of a * <jmolContourData count="[nContours]"> - * <jmolContour index="0" data="fractional data">triangle bitset data</jmolContour> - * <jmolContour index="1" data="fractional data">triangle bitset data</jmolContour> - * <jmolContour index="2" data="fractional data">triangle bitset data</jmolContour> + * <jmolContour index="0" value="-0.033" color="[xff0000]" encoding="base90iff1" data="fractional data">triangle bitset data</jmolContour> + * <jmolContour index="1" value=" 0.000" color="[xffff00]" encoding="base90iff1" data="fractional data">triangle bitset data</jmolContour> + * <jmolContour index="2" value=" 0.033" color="[x00ffff]" encoding="base90iff1" data="fractional data">triangle bitset data</jmolContour> * ... * </jmolContourData> * * One presumes an ordered set of triangles. * The contour intersects these triangles along two edges or at two vertices. * (see IsosurfaceMesh for details) + * Each contour is a Vector containing: + * 0 Integer number of polygons (length of BitSet) + * 1 BitSet of critical triangles + * 2 Float value + * 3 int[] [colorArgb] + * 4 StringBuffer containing encoded data for each segment: + * char type ('3', '6', '5') indicating which two edges + * of the triangle are connected: + * '3' 0x011 AB-BC + * '5' 0x101 AB-CA + * '6' 0x110 BC-CA + * char fraction along first edge (jvxlFractionToCharacter) + * char fraction along second edge (jvxlFractionToCharacter) + * 5- stream of pairs of points for rendering (created * + * * @param contours * @param sb */ @@ -329,35 +342,55 @@ int nPolygons = ((Integer) contours[i] .get(CONTOUR_NPOLYGONS)).intValue(); StringBuffer sb1 = new StringBuffer(); - jvxlEncodeBitSet((BitSet) contours[i].get(CONTOUR_BITSET), - nPolygons, sb1); + BitSet bs = (BitSet) contours[i].get(CONTOUR_BITSET); + jvxlEncodeBitSet(bs, nPolygons, sb1); appendTag(sb, "jvxlContour", " ", new String[] { "index", "" + i, "value", "" + contours[i].get(CONTOUR_VALUE), "color", Escape.escapeColor(((int[]) contours[i] .get(CONTOUR_COLOR))[0]), - "count", "" + contours[i].get(CONTOUR_NPOLYGONS), + "count", "" + bs.length(), "encoding", "base90iff1", "data", jvxlCompressString(contours[i].get(CONTOUR_FDATA).toString(), true) }, sb1.toString(), "\n"); } sb.append("</jvxlContourData>\n"); } + /** + * Interpret fractional data in terms of actual vertex positions and + * create the elements of a Vector in Vector[] vContours starting at + * the CONTOUR_POINTS position. + * + * @param v + * @param polygonIndexes + * @param vertices + */ public static void set3dContourVector(Vector v, int[][] polygonIndexes, Point3f[] vertices) { // we must add points only after the MarchingCubes process has completed. if (v.size() < CONTOUR_POINTS) return; - String fData = ((StringBuffer) v.get(CONTOUR_FDATA)).toString(); + StringBuffer fData = (StringBuffer) v.get(CONTOUR_FDATA); BitSet bs = (BitSet) v.get(CONTOUR_BITSET); int nPolygons = ((Integer)v.get(CONTOUR_NPOLYGONS)).intValue(); int pt = 0; + int nBuf = fData.length(); + int type = 0; + char c1 = ' '; + char c2 = ' '; for (int i = 0; i < nPolygons; i++) { if (!bs.get(i)) continue; int[] vertexIndexes = polygonIndexes[i]; - int type = ((int) fData.charAt(pt++)) - 48; - char c1 = fData.charAt(pt++); - char c2 = fData.charAt(pt++); + while (pt < nBuf && !Character.isDigit(c1 = fData.charAt(pt++))) { + // skip non-digit data + } + type = ((int) c1) - 48; + while (pt < nBuf && Character.isWhitespace(c1 = fData.charAt(pt++))) { + // skip whitespace + } + while (pt < nBuf && Character.isWhitespace(c2 = fData.charAt(pt++))) { + // skip whitespace + } float f1 = jvxlFractionFromCharacter(c1, defaultEdgeFractionBase, defaultEdgeFractionRange, 0); float f2 = jvxlFractionFromCharacter(c2, defaultEdgeFractionBase, defaultEdgeFractionRange, 0); int i1, i2, i3, i4; @@ -451,7 +484,6 @@ colorFractionBase, colorFractionRange)); } jvxlData.jvxlColorData = list1.append(list2).append('\n').toString(); - jvxlData.updateInfoLines(); } /* ****************************************************************** @@ -962,37 +994,19 @@ .append(v.volumetricVectors[i].x).append(' ') .append(v.volumetricVectors[i].y).append(' ') .append(v.volumetricVectors[i].z).append('\n'); - if (nAtoms == Integer.MAX_VALUE || nAtoms == Integer.MIN_VALUE) { - JvxlCoder.jvxlAddDummyAtomList(v, sb); - return; - } - nAtoms = Math.abs(nAtoms); + if (nAtoms != Integer.MAX_VALUE && nAtoms != Integer.MIN_VALUE) { + nAtoms = Math.abs(nAtoms); for (int i = 0, n = 0; i < nAtoms; i++) sb.append((n = Math.abs(atomNo[i])) + " " + n + ".0 " + atomXyz[i].x + " " + atomXyz[i].y + " " + atomXyz[i].z + "\n"); - } - - public static String fixAtomLineVersion1(int atomCount, String atomLine, - boolean isXLowToHigh, - boolean isAngstroms) { - if (isAngstroms) { - if (atomLine.indexOf("ANGSTROM") < 0) - atomLine += " ANGSTROMS"; - } else { - if (atomLine.indexOf("BOHR") < 0) - atomLine += " BOHR"; + return; } - return (atomCount == Integer.MIN_VALUE ? "" : (isXLowToHigh ? "+" : "-") - + Math.abs(atomCount)) + atomLine + "\n"; - } - - public static void jvxlAddDummyAtomList(VolumeData v, StringBuffer bs) { Point3f pt = new Point3f(v.volumetricOrigin); - bs.append("1 1.0 ").append(pt.x).append(' ').append(pt.y).append(' ') + sb.append("1 1.0 ").append(pt.x).append(' ').append(pt.y).append(' ') .append(pt.z).append(" //BOGUS H ATOM ADDED FOR JVXL FORMAT\n"); for (int i = 0; i < 3; i++) pt.scaleAdd(v.voxelCounts[i] - 1, v.volumetricVectors[i], pt); - bs.append("2 2.0 ").append(pt.x).append(' ').append(pt.y).append(' ') + sb.append("2 2.0 ").append(pt.x).append(' ').append(pt.y).append(' ') .append(pt.z).append(" //BOGUS He ATOM ADDED FOR JVXL FORMAT\n"); } @@ -1065,7 +1079,6 @@ int nSurfaces, String state, String comment) { // pre-XML - jvxlData.jvxlInfoLine = TextFormat.simpleReplace(jvxlData.jvxlInfoLine, "asXML=\"true", "asXML=\"false"); StringBuffer data = new StringBuffer(); if (includeHeader) { String s = jvxlData.jvxlFileHeader @@ -1084,9 +1097,8 @@ for (int i = 0; i < title.length; i++) data.append("# ").append(title[i]).append('\n'); state = (state == null ? "" : " rendering:" + state); - data.append(jvxlData.jvxlDefinitionLine + state) - .append('\n'); - + String definitionLine = jvxlGetInfo(jvxlData, false); + data.append(definitionLine).append(state).append('\n'); StringBuffer sb = new StringBuffer(); String colorData = (jvxlData.jvxlColorData == null ? "" : jvxlData.jvxlColorData); if (jvxlData.vertexDataOnly) { @@ -1102,25 +1114,18 @@ sb.append(jvxlCompressString(colorData, false)).append('\n'); } int len = sb.length(); - if (len > 0) { - if (jvxlData.wasCubic && jvxlData.nBytes > 0) - jvxlData.jvxlCompressionRatio = (int) (((float) jvxlData.nBytes) / len); - else - jvxlData.jvxlCompressionRatio = (int) (((float) (jvxlData.nPointsX - * jvxlData.nPointsY * jvxlData.nPointsZ * 13)) / len); - } - data.append(sb); if (includeHeader) { if (msg != null && !jvxlData.vertexDataOnly) data.append("#-------end of jvxl file data-------\n"); - data.append(jvxlData.jvxlInfoLine).append('\n'); + String infoLine = TextFormat.simpleReplace(jvxlGetInfo(jvxlData, true), "asXML=\"true", "asXML=\"false"); + data.append(infoLine).append('\n'); jvxlAppendCommandState(data, comment, state); if (includeHeader) data.append("<jvxlFileTitle>\n").append(jvxlData.jvxlFileTitle).append( "</jvxlFileTitle>\n"); } - return data.toString(); + return jvxlSetCompressionRatio(data, jvxlData, len); } Modified: trunk/Jmol/src/org/jmol/jvxl/data/JvxlData.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/data/JvxlData.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/data/JvxlData.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -84,16 +84,13 @@ public String jvxlFileTitle; public String jvxlFileMessage; public String jvxlFileHeader; - public String jvxlDefinitionLine; public String jvxlSurfaceData; public String jvxlEdgeData; public String jvxlColorData; - public String jvxlInfoLine; public String jvxlVolumeDataXml; public Point4f jvxlPlane; - public int jvxlCompressionRatio; public boolean isJvxlPrecisionColor; public boolean jvxlDataIsColorMapped; public boolean jvxlDataIs2dContour; @@ -118,7 +115,7 @@ public float cutoff; public float pointsPerAngstrom; public int nPointsX, nPointsY, nPointsZ; - public int nBytes; + public long nBytes; public int nContours; public int nEdges; public int nSurfaceInts; @@ -155,17 +152,11 @@ setSurfaceInfo(thePlane, nSurfaceInts, sb.toString()); } - public void jvxlUpdateInfo(String[] title, int nBytes) { + public void jvxlUpdateInfo(String[] title, long nBytes) { this.title = title; this.nBytes = nBytes; - updateInfoLines(); } - public void updateInfoLines() { - jvxlDefinitionLine = JvxlCoder.jvxlGetInfo(this, false); - jvxlInfoLine = JvxlCoder.jvxlGetInfo(this, true); - } - public void updateSurfaceData(float[] vertexValues, int vertexCount, int vertexIncrement, char isNaN) { if (jvxlEdgeData.length() == 0) return; Modified: trunk/Jmol/src/org/jmol/jvxl/readers/EfvetReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/EfvetReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/EfvetReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -93,7 +93,7 @@ private void getHeader() throws Exception { skipTo("<efvet", null); - while((line = br.readLine()).length() > 0 && line.indexOf(">") < 0) + while(readLine().length() > 0 && line.indexOf(">") < 0) jvxlFileHeaderBuffer.append("# " + line + "\n"); Logger.info(jvxlFileHeaderBuffer.toString()); } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -625,6 +625,8 @@ protected void jvxlDecodeContourData(JvxlData jvxlData, String data) throws Exception { Vector vs = new Vector(); + StringBuffer values = new StringBuffer(); + StringBuffer colors = new StringBuffer(); int pt = -1; jvxlData.vContours = null; if (data == null) @@ -632,13 +634,15 @@ while ((pt = data.indexOf("<jvxlContour", pt + 1)) >= 0) { Vector v = new Vector(); String s = getXmlData("jvxlContour", data.substring(pt), true); - int n = parseInt(getXmlAttrib(s, "count")); float value = parseFloat(getXmlAttrib(s, "value")); + values.append(" ").append(value); short colix = Graphics3D.getColix(Graphics3D.getArgbFromString(getXmlAttrib(s, "color"))); int color = Graphics3D.getArgb(colix); + colors.append(" ").append(Escape.escapeColor(color)); String fData = getXmlAttrib(s, "data"); BitSet bs = JvxlCoder.jvxlDecodeBitSet(getXmlData("jvxlContour", s, false)); + int n = bs.length(); IsosurfaceMesh.setContourVector(v, n, bs, value, colix, color, new StringBuffer( fData)); vs.add(v); @@ -655,6 +659,8 @@ jvxlData.contourColixes[i] = ((short[]) jvxlData.vContours[i].get(3))[0]; } Logger.info("JVXL read: " + n + " discrete contours"); + Logger.info("JVXL read: contour values: " + values); + Logger.info("JVXL read: contour colors: " + colors); jvxlData.contourColors = Graphics3D.getHexCodes(jvxlData.contourColixes); } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -199,32 +199,27 @@ switch(mrcHeader.mode) { case 0: voxelValue = binarydoc.readByte(); - nBytes++; break; case 1: voxelValue = binarydoc.readShort(); - nBytes += 2; break; case 3: //read first component only voxelValue = binarydoc.readShort(); binarydoc.readShort(); - nBytes += 4; break; case 4: //read first component only voxelValue = binarydoc.readFloat(); binarydoc.readFloat(); - nBytes += 8; break; case 6: voxelValue = binarydoc.readUnsignedShort(); - nBytes += 2; break; default: voxelValue = binarydoc.readFloat(); - nBytes += 4; } + nBytes = binarydoc.getPosition(); return voxelValue; } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/ObjReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/ObjReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/ObjReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -24,7 +24,6 @@ package org.jmol.jvxl.readers; import java.io.BufferedReader; -import java.util.Date; import javax.vecmath.Point3f; @@ -111,7 +110,7 @@ private boolean readVertices() throws Exception { pmeshError = "pmesh ERROR: invalid vertex list"; Point3f pt = new Point3f(); - while ((line = br.readLine()) != null) { + while (readLine() != null) { if (line.length() == 0 || nVertices == 0 && line.indexOf("v ") != 0) continue; if (line.indexOf("v ") != 0) @@ -131,12 +130,12 @@ if (!params.readAllData) { for (int i = 0; i < params.fileIndex; i++) { while (line != null && line.indexOf("g ") != 0) - line = br.readLine(); + readLine(); if (line == null) break; color = Graphics3D.getArgbFromString("[x" + line.substring(3) + "]"); //System.out.println("[x" + line.substring(3) + "]" + " " + color); - line = br.readLine(); + readLine(); } } @@ -162,7 +161,7 @@ break; color = Graphics3D.getArgbFromString("[x" + line.substring(3) + "]"); } - line = br.readLine(); + readLine(); } } catch (Exception e) { if (line != null) Modified: trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -223,6 +223,8 @@ addTriangleCheck(vertices[0], vertices[1], vertices[2], 7, 0, false, 0); } } + if (isBinary) + nBytes = binarydoc.getPosition(); return true; } @@ -234,7 +236,7 @@ private String nextToken() throws Exception { while (iToken >= tokens.length) { iToken = 0; - line = br.readLine(); + readLine(); tokens = getTokens(); } return tokens[iToken++]; Modified: trunk/Jmol/src/org/jmol/jvxl/readers/PolygonFileReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/PolygonFileReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/PolygonFileReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -63,4 +63,10 @@ } abstract void getSurfaceData() throws Exception; + + protected String readLine() throws Exception { + line = br.readLine(); + nBytes += line.length(); + return line; + } } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceFileReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceFileReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceFileReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -157,12 +157,15 @@ protected void skipTo(String info, String what) throws Exception { if (info != null) - while ((line = br.readLine()).indexOf(info) < 0) { + while (readLine().indexOf(info) < 0) { } if (what != null) next[0] = line.indexOf(what) + what.length() + 2; } + protected String readLine() throws Exception { + return line = br.readLine(); + } /* int parseInt(String s, int iStart) { next[0] = iStart; Modified: trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -1003,7 +1003,7 @@ return JvxlCoder.jvxlGetFile(jvxlData, null, params.title, "", true, index, null, null); if (property == "jvxlFileInfo") - return jvxlData.jvxlInfoLine; // for Jvxl.java + return JvxlCoder.jvxlGetInfo(jvxlData, true); // for Jvxl.java return null; } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -241,7 +241,7 @@ // CUBE/APBS/JVXL file reading stuff //////////////////////////////////////////////////////////////// - protected int nBytes; + protected long nBytes; protected int nDataPoints; protected int nPointsX, nPointsY, nPointsZ; Modified: trunk/Jmol/src/org/jmol/jvxl/readers/VolumeFileReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/VolumeFileReader.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/jvxl/readers/VolumeFileReader.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -28,7 +28,6 @@ import javax.vecmath.Vector3f; -import org.jmol.jvxl.data.JvxlCoder; import org.jmol.util.Logger; import org.jmol.util.Parser; @@ -310,35 +309,46 @@ } /** - * checks an atom line for "ANGSTROMS", possibly overriding the data's - * natural units, BOHR (similar to Gaussian CUBE files). + * checks an atom line for "ANGSTROMS", possibly overriding the data's natural + * units, BOHR (similar to Gaussian CUBE files). * * @param isXLowToHigh * @param isAngstroms * @param strAtomCount * @param atomLine * @param bs - * @return isAngstroms + * @return isAngstroms */ - protected static boolean checkAtomLine(boolean isXLowToHigh, boolean isAngstroms, - String strAtomCount, String atomLine, - StringBuffer bs) { + protected static boolean checkAtomLine(boolean isXLowToHigh, + boolean isAngstroms, + String strAtomCount, String atomLine, + StringBuffer bs) { if (atomLine.indexOf("ANGSTROMS") >= 0) isAngstroms = true; - int atomCount = (strAtomCount == null ? Integer.MAX_VALUE : Parser.parseInt(strAtomCount)); - switch(atomCount) { + int atomCount = (strAtomCount == null ? Integer.MAX_VALUE : Parser + .parseInt(strAtomCount)); + switch (atomCount) { case Integer.MIN_VALUE: - atomCount = 0; - atomLine = " " + atomLine.substring(atomLine.indexOf(" ") + 1); + atomCount = 0; + atomLine = " " + atomLine.substring(atomLine.indexOf(" ") + 1); break; case Integer.MAX_VALUE: atomCount = Integer.MIN_VALUE; break; default: - String s = "" + atomCount; - atomLine = atomLine.substring(atomLine.indexOf(s) + s.length()); - } - atomLine = JvxlCoder.fixAtomLineVersion1(atomCount, atomLine, isXLowToHigh, isAngstroms); + String s = "" + atomCount; + atomLine = atomLine.substring(atomLine.indexOf(s) + s.length()); + } + if (isAngstroms) { + if (atomLine.indexOf("ANGSTROM") < 0) + atomLine += " ANGSTROMS"; + } else { + if (atomLine.indexOf("BOHR") < 0) + atomLine += " BOHR"; + } + atomLine = (atomCount == Integer.MIN_VALUE ? "" + : (isXLowToHigh ? "+" : "-") + Math.abs(atomCount)) + + atomLine + "\n"; bs.append(atomLine); return isAngstroms; } Modified: trunk/Jmol/src/org/jmol/shapesurface/Isosurface.java =================================================================== --- trunk/Jmol/src/org/jmol/shapesurface/Isosurface.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/shapesurface/Isosurface.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -462,7 +462,7 @@ return JvxlCoder.jvxlGetFile(jvxlData, null, title, "orbital #" + index, false, 1, thisMesh .getState(myType), (thisMesh.scriptCommand == null ? "" : thisMesh.scriptCommand)); if (property == "jvxlFileInfo") - return jvxlData.jvxlInfoLine; + return JvxlCoder.jvxlGetInfo(jvxlData, true); return null; } @@ -893,7 +893,6 @@ private void setJvxlInfo() { if (sg.getJvxlData() != jvxlData || sg.getJvxlData() != thisMesh.jvxlData) jvxlData = thisMesh.jvxlData = sg.getJvxlData(); - jvxlData.updateInfoLines(); } public Vector getShapeDetail() { @@ -907,8 +906,9 @@ info.put("vertexCount", new Integer(mesh.vertexCount)); if (mesh.ptCenter.x != Float.MAX_VALUE) info.put("center", mesh.ptCenter); - if (mesh.jvxlData.jvxlDefinitionLine != null) - info.put("jvxlDefinitionLine", mesh.jvxlData.jvxlDefinitionLine); + String s = JvxlCoder.jvxlGetInfo(mesh.jvxlData, true); + if (s != null) + info.put("jvxlInfo", s.replace('\n', ' ')); info.put("modelIndex", new Integer(mesh.modelIndex)); if (mesh.title != null) info.put("title", mesh.title); Modified: trunk/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java =================================================================== --- trunk/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -305,8 +305,9 @@ } /** - * create a set of contour data. Each contour is a - * Vector containing: + * create a set of contour data. + * + * Each contour is a Vector containing: * 0 Integer number of polygons (length of BitSet) * 1 BitSet of critical triangles * 2 Float value Modified: trunk/Jmol/src/org/jmol/util/BinaryDocument.java =================================================================== --- trunk/Jmol/src/org/jmol/util/BinaryDocument.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/jmol/util/BinaryDocument.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -78,34 +78,41 @@ } public byte readByte() throws Exception { + nBytes++; return stream.readByte(); } public void readByteArray(byte[] b) throws Exception { - stream.read(b); + nBytes += b.length; + stream.read(b); } public void readByteArray(byte[] b, int off, int len) throws Exception { + nBytes += len; stream.read(b, off, len); } public short readShort() throws Exception { + nBytes += 2; return (isBigEndian ? stream.readShort() : (short) ((((int) stream.readByte()) & 0xff) | (((int) stream.readByte()) & 0xff) << 8)); } public int readInt() throws Exception { + nBytes += 4; return (isBigEndian ? stream.readInt() : readLEInt()); } public int readUnsignedShort() throws Exception { + nBytes += 2; int a = (((int) stream.readByte()) & 0xff); int b = (((int) stream.readByte()) & 0xff); return (isBigEndian ? (a << 8) + b : (b << 8) + a); } public long readLong() throws Exception { + nBytes += 8; return (isBigEndian ? stream.readLong() : ((((long) stream.readByte()) & 0xff) | (((long) stream.readByte()) & 0xff) << 8 @@ -118,11 +125,13 @@ } public float readFloat() throws Exception { + nBytes += 4; return (isBigEndian ? stream.readFloat() : Float.intBitsToFloat(readLEInt())); } public double readDouble() throws Exception { + nBytes += 8; return (isBigEndian ? stream.readDouble() : Double.longBitsToDouble(readLELong())); } @@ -150,11 +159,18 @@ try { stream.reset(); stream.skipBytes((int)offset); + nBytes = offset; } catch (Exception e) { Logger.error(null, e); } } + long nBytes; + + public long getPosition() { + return nBytes; + } + /* random access -- application only: * void seekFile(long offset) { Modified: trunk/Jmol/src/org/openscience/jvxl/simplewriter/SimpleMarchingCubes.java =================================================================== --- trunk/Jmol/src/org/openscience/jvxl/simplewriter/SimpleMarchingCubes.java 2009-10-29 04:23:34 UTC (rev 11643) +++ trunk/Jmol/src/org/openscience/jvxl/simplewriter/SimpleMarchingCubes.java 2009-10-29 13:11:50 UTC (rev 11644) @@ -122,7 +122,6 @@ jvxlData.nPointsY = volumeData.voxelCounts[1]; jvxlData.nPointsZ = volumeData.voxelCounts[2]; jvxlData.setSurfaceInfoFromBitSet(bsVoxels, null); - jvxlData.updateInfoLines(); if (doCalcArea) { areaVolumeReturn[0] = calculatedArea; areaVolumeReturn[1] = calculatedVolume; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2010-08-19 22:34:17
|
Revision: 14069 http://jmol.svn.sourceforge.net/jmol/?rev=14069&view=rev Author: hansonr Date: 2010-08-19 22:34:11 +0000 (Thu, 19 Aug 2010) Log Message: ----------- 12.1.6 VERSION # bug fix: very first start of Jmol, with no history, fails. # bug fix: QChem reader not indicating symmetry A B properly # bug fix: QChem reader filter "BETA" fails # bug fix: obscure error when array variable is in place of required expression # code: ColorEncoder cleaner, no inappropriately static classes # bug fix: ColorEncoder not allowing for override of BW and WB palette # bug fix: GAMESS reader UHF caught on reading orbitals with LZ VALUE line Modified Paths: -------------- trunk/Jmol/src/org/jmol/export/history/HistoryFile.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java Modified: trunk/Jmol/src/org/jmol/export/history/HistoryFile.java =================================================================== --- trunk/Jmol/src/org/jmol/export/history/HistoryFile.java 2010-08-19 22:32:03 UTC (rev 14068) +++ trunk/Jmol/src/org/jmol/export/history/HistoryFile.java 2010-08-19 22:34:11 UTC (rev 14069) @@ -344,6 +344,8 @@ * Loads properties from the history file. */ private void load() { + if (file == null) + return; try { FileInputStream input = new FileInputStream(file); @@ -358,7 +360,8 @@ * Saves properties to the history file. */ private void save() { - + if (file == null) + return; try { FileOutputStream output = new FileOutputStream(file); properties.store(output, header); Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2010-08-19 22:32:03 UTC (rev 14068) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2010-08-19 22:34:11 UTC (rev 14069) @@ -1,8 +1,9 @@ # Developers: to add a description of changes you have made, # add it on a line starting with # below the "version=..." line -version=12.1.6_dev +version=12.1.6 +# bug fix: very first start of Jmol, with no history, fails. # bug fix: QChem reader not indicating symmetry A B properly # bug fix: QChem reader filter "BETA" fails # bug fix: obscure error when array variable is in place of required expression Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2010-08-19 22:32:03 UTC (rev 14068) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2010-08-19 22:34:11 UTC (rev 14069) @@ -211,27 +211,19 @@ say(GT._("Starting display...")); display.start(); - if (jmolApp.menuFile != null) { + if (jmolApp.menuFile != null) viewer.getProperty("DATA_API", "setMenu", viewer.getFileAsString(jmolApp.menuFile)); - } - // prevent new Jmol from covering old Jmol - if (loc != null) { - frame.setLocation(loc); - } else if (parent == null) { - frame.setLocation(historyFile.getWindowPosition("Jmol")); - } else { - Point location = parent.frame.getLocationOnScreen(); + if (loc == null && (parent != null || (loc = historyFile.getWindowPosition("Jmol")) == null)) { + loc = parent.frame.getLocationOnScreen(); int maxX = screenSize.width - 50; int maxY = screenSize.height - 50; - - location.x += 40; - location.y += 40; - if ((location.x > maxX) || (location.y > maxY)) { - location.setLocation(0, 0); - } - frame.setLocation(location); + loc.x += 40; + loc.y += 40; + if (loc.x > maxX || loc.y > maxY) + loc.setLocation(0, 0); } + frame.setLocation(loc); frame.getContentPane().add("Center", this); frame.addWindowListener(new JmolPanel.AppCloser()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2010-09-14 00:09:47
|
Revision: 14293 http://jmol.svn.sourceforge.net/jmol/?rev=14293&view=rev Author: hansonr Date: 2010-09-14 00:09:41 +0000 (Tue, 14 Sep 2010) Log Message: ----------- version=12.1.11_dev # code: streamlined AppConsole and AppletConsole # new feature: AppletConsole allows embedding in larger applications # new feature: smooth on-the-fly language changes in applet to application Modified Paths: -------------- trunk/Jmol/src/org/jmol/applet/AppletConsole.java trunk/Jmol/src/org/jmol/console/JmolConsole.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java Modified: trunk/Jmol/src/org/jmol/applet/AppletConsole.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/AppletConsole.java 2010-09-13 23:52:28 UTC (rev 14292) +++ trunk/Jmol/src/org/jmol/applet/AppletConsole.java 2010-09-14 00:09:41 UTC (rev 14293) @@ -78,11 +78,12 @@ if (externalContainer == null) { JFrame jf = new JFrame(); jf.setSize(600, 400); - externalContainer = jf; - jf.setTitle("testing123"); + this.externalContainer = jf; + } else { + this.externalContainer = externalContainer; + viewer.setConsole(this); } - this.externalContainer = externalContainer; - set(); + layoutWindow(); output(defaultMessage); } @@ -134,7 +135,7 @@ public void zap() { } - private void set() { + private void layoutWindow() { //Logger.debug("Console constructor"); setLabels(); setupInput(); @@ -145,8 +146,7 @@ JScrollPane jscrollOutput = new JScrollPane(output); jscrollOutput.setMinimumSize(new Dimension(2, 100)); - Container c = (externalContainer instanceof JFrame ? ((JFrame) externalContainer) - .getContentPane() : externalContainer); + Container c = getPane(); c.setLayout(new BoxLayout(c, BoxLayout.Y_AXIS)); //System.out.println("Console " + this + " set(2)"); Modified: trunk/Jmol/src/org/jmol/console/JmolConsole.java =================================================================== --- trunk/Jmol/src/org/jmol/console/JmolConsole.java 2010-09-13 23:52:28 UTC (rev 14292) +++ trunk/Jmol/src/org/jmol/console/JmolConsole.java 2010-09-14 00:09:41 UTC (rev 14293) @@ -75,6 +75,10 @@ externalContainer.setVisible(false); } + protected Container getPane() { + return (externalContainer instanceof JFrame ? ((JFrame) externalContainer) + .getContentPane() : externalContainer); + } protected String getLabel(String key) { if (labels == null) { labels = new Hashtable<String, String>(); Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java 2010-09-13 23:52:28 UTC (rev 14292) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java 2010-09-14 00:09:41 UTC (rev 14293) @@ -82,16 +82,15 @@ viewerFrame = (display instanceof DisplayPanel ? ((DisplayPanel) display) .getFrame() : display instanceof JFrame ? (JFrame) display : null); if (externalContainer == null) { - this.externalContainer = jcd = new JDialog(viewerFrame, null, false); + jcd = new JDialog(viewerFrame, null, false); jcd.setSize(645, 400); - layoutWindow(jcd.getContentPane(), enabledButtons); jcd.setLocationRelativeTo(viewerFrame); + this.externalContainer = jcd; } else { this.externalContainer = externalContainer; - layoutWindow(externalContainer, enabledButtons); viewer.setConsole(this); } - setTitle(); + layoutWindow(enabledButtons); } public AppConsole() { @@ -178,7 +177,8 @@ labels.put("Variables", GT._("Variables")); } - private void layoutWindow(Container container, String enabledButtons) { + private void layoutWindow(String enabledButtons) { + setTitle(); console = new ConsoleTextPane(this); console.setPrompt(); console.setDragEnabled(true); @@ -206,7 +206,7 @@ buttonPanelWrapper.setPreferredSize(new Dimension(60, 60)); spane.setDividerSize(0); spane.setResizeWeight(0.95); - container.add(spane); + getPane().add(spane); // container.setLayout(new BorderLayout()); // container.add(consolePane,BorderLayout.CENTER); //container.add(buttonPanelWrapper,BorderLayout.SOUTH); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2010-11-13 02:07:16
|
Revision: 14644 http://jmol.svn.sourceforge.net/jmol/?rev=14644&view=rev Author: hansonr Date: 2010-11-13 02:07:09 +0000 (Sat, 13 Nov 2010) Log Message: ----------- version=12.1.22_dev # new feature: Edit...Preferences...Clear History # -- resets window positions and clear all history. # -- thank you, Tami Caraballo! Modified Paths: -------------- trunk/Jmol/src/org/jmol/export/history/HistoryFile.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/GuiMap.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/PreferencesDialog.java trunk/Jmol/src/org/openscience/jmol/app/webexport/WebExport.java Modified: trunk/Jmol/src/org/jmol/export/history/HistoryFile.java =================================================================== --- trunk/Jmol/src/org/jmol/export/history/HistoryFile.java 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/jmol/export/history/HistoryFile.java 2010-11-13 02:07:09 UTC (rev 14644) @@ -111,7 +111,7 @@ * @param value Value of the property * @return true if the property is modified */ - private boolean addProperty(String key, String value) { + public boolean addProperty(String key, String value) { boolean modified = false; Object oldValue = properties.setProperty(key, value); if (!value.equals(oldValue)) { @@ -370,5 +370,16 @@ System.err.println("Error saving history: " + ex); } } + + public void clear() { + if (file == null) + return; + try { + FileOutputStream output = new FileOutputStream(file); + output.close(); + } catch (IOException ex) { + System.err.println("Error clearing history: " + ex); + } + } } Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2010-11-13 02:07:09 UTC (rev 14644) @@ -3,6 +3,9 @@ version=12.1.22_dev +# new feature: Edit...Preferences...Clear History +# -- resets window positions and clear all history. +# -- thank you, Tami Caraballo! # bug fix: zap 1.1 when models have cartoons or other bioshapes crashes Jmol # bug fix: Ramachandran approximation of P straightness off by a few percent # bug fix: SMILES matching string with ".[C@H]" reads stereochemistry incorrectly Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/GuiMap.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/GuiMap.java 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/GuiMap.java 2010-11-13 02:07:09 UTC (rev 14644) @@ -199,8 +199,8 @@ ._("RasMol/Chime compatible axes orientation/rotations")); labels.put("Prefs.openFilePreview", GT ._("File Preview (requires restarting Jmol)")); - labels.put("Prefs.clearConsoleButton", GT - ._("Clear console button (requires restarting Jmol)")); + labels.put("Prefs.clearHistory", GT + ._("Clear history (requires restarting Jmol)")); labels.put("Prefs.isLabelAtomColor", GT._("Use Atom Color")); labels.put("Prefs.isBondAtomColor", GT._("Use Atom Color")); labels.put("rotateScriptTip", GT._("Rotate molecule.")); Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2010-11-13 02:07:09 UTC (rev 14644) @@ -480,6 +480,8 @@ private void dispose(JFrame f) { // Save window positions and status in the history + if (webExport != null) + WebExport.cleanUp(); if (historyFile != null) { if (frame != null) { jmolApp.border.x = frame.getWidth() - display.dimSize.width; @@ -488,17 +490,15 @@ } //System.out.println("doClose border: " + border); //historyFile.addWindowInfo(CONSOLE_WINDOW_NAME, consoleframe); + AppConsole console = (AppConsole) viewer.getProperty("DATA_API","getAppConsole", null); + if (console != null && console.jcd != null) + historyFile.addWindowInfo(SCRIPT_WINDOW_NAME, console.jcd, null); + Component c = (Component) viewer.getProperty("DATA_API","getScriptEditor", null); + if (c != null) + historyFile.addWindowInfo(EDITOR_WINDOW_NAME, c, null); + if (historyFile.getProperty("clearHistory", "false").equals("true")) + historyFile.clear(); } - AppConsole console = (AppConsole) viewer.getProperty("DATA_API","getAppConsole", null); - if (console != null && console.jcd != null) - historyFile.addWindowInfo(SCRIPT_WINDOW_NAME, console.jcd, null); - Component c = (Component) viewer.getProperty("DATA_API","getScriptEditor", null); - if (c != null) - historyFile.addWindowInfo(EDITOR_WINDOW_NAME, c, null); - if (historyFile != null && webExport != null) { - WebExport.saveHistory(); - WebExport.cleanUp(); - } if (numWindows <= 1) { // Close Jmol report(GT._("Closing Jmol...")); Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/PreferencesDialog.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/PreferencesDialog.java 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/PreferencesDialog.java 2010-11-13 02:07:09 UTC (rev 14644) @@ -76,7 +76,7 @@ boolean showBoundingBox; boolean axesOrientationRasmol; boolean openFilePreview; - boolean clearConsoleButton; + boolean clearHistory; float minBondDistance; float bondTolerance; short marBond; @@ -90,7 +90,7 @@ private JCheckBox cbShowAxes, cbShowBoundingBox; private JCheckBox cbAxesOrientationRasmol; private JCheckBox cbOpenFilePreview; - private JCheckBox cbClearConsoleButton; + private JCheckBox cbClearHistory; private Properties originalSystemProperties; private Properties jmolDefaultProperties; Properties currentProperties; @@ -270,10 +270,10 @@ cbOpenFilePreview.addItemListener(checkBoxListener); otherPanel.add(cbOpenFilePreview); - cbClearConsoleButton = - guimap.newJCheckBox("Prefs.clearConsoleButton", clearConsoleButton); - cbClearConsoleButton.addItemListener(checkBoxListener); - otherPanel.add(cbClearConsoleButton); + cbClearHistory = + guimap.newJCheckBox("Prefs.clearHistory", clearHistory); + cbClearHistory.addItemListener(checkBoxListener); + otherPanel.add(cbClearHistory); constraints = new GridBagConstraints(); constraints.gridwidth = GridBagConstraints.REMAINDER; @@ -558,7 +558,7 @@ cbAxesOrientationRasmol.setSelected(viewer.getAxesOrientationRasmol()); cbOpenFilePreview.setSelected(openFilePreview); - cbClearConsoleButton.setSelected(clearConsoleButton); + cbClearHistory.setSelected(clearHistory); // Atom panel controls: vdwPercentSlider.setValue(viewer.getPercentVdwAtom()); @@ -621,7 +621,7 @@ showBoundingBox = Boolean.getBoolean("showBoundingBox"); axesOrientationRasmol = Boolean.getBoolean("axesOrientationRasmol"); openFilePreview = Boolean.valueOf(System.getProperty("openFilePreview", "true")).booleanValue(); - clearConsoleButton = Boolean.getBoolean("clearConsoleButton"); + clearHistory = Boolean.getBoolean("clearHistory"); minBondDistance = new Float(currentProperties.getProperty("minBondDistance")).floatValue(); @@ -712,9 +712,11 @@ } else if (key.equals("Prefs.openFilePreview")) { openFilePreview = isSelected; currentProperties.put("openFilePreview", strSelected); - } else if (key.equals("Prefs.clearConsoleButton")) { - clearConsoleButton = isSelected; - currentProperties.put("clearConsoleButton", strSelected); + } else if (key.equals("Prefs.clearHistory")) { + clearHistory = isSelected; + currentProperties.put("clearHistory", strSelected); + if (JmolPanel.historyFile != null) + JmolPanel.historyFile.addProperty("clearHistory", strSelected); } } }; Modified: trunk/Jmol/src/org/openscience/jmol/app/webexport/WebExport.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/webexport/WebExport.java 2010-11-13 00:50:34 UTC (rev 14643) +++ trunk/Jmol/src/org/openscience/jmol/app/webexport/WebExport.java 2010-11-13 02:07:09 UTC (rev 14644) @@ -224,6 +224,8 @@ } public static void saveHistory() { + if (historyFile == null) + return; historyFile.addWindowInfo(windowName, webFrame, null); // prop.setProperty("webMakerInfoWidth", "" + webPanels[0].getInfoWidth()); // prop.setProperty("webMakerInfoHeight", "" + webPanels[0].getInfoHeight()); @@ -455,6 +457,5 @@ } } saveHistory();//force save of history. - System.gc();//force garbage collection. } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-05-12 03:02:57
|
Revision: 15455 http://jmol.svn.sourceforge.net/jmol/?rev=15455&view=rev Author: hansonr Date: 2011-05-12 03:02:47 +0000 (Thu, 12 May 2011) Log Message: ----------- version=12.1.46_dev # new feature: set bondDots -- partial bonds rendered with dots rather than dashes # new feature: UNDO/REDO commands -- for atom movement or modelkit actions only # UNDO/UNDO 1 # undo last movement # UNDO n # undo last n movements # UNDO 0|ALL # undo all movements # REDO/REDO 1 # redo last movement # REDO n # redo last n movements # REDO 0|ALL # redo all movements # UNDO -1 # clear UNDO history # REDO -1 # clear REDO history # REDO -2/UNDO -2 # clear both histories # bug fix: undocumented "redo" "undo" application-only commands changed to "redocmd" "undocmd" Modified Paths: -------------- trunk/Jmol/src/org/jmol/script/ScriptEvaluator.java trunk/Jmol/src/org/jmol/script/Token.java trunk/Jmol/src/org/jmol/shape/SticksRenderer.java trunk/Jmol/src/org/jmol/viewer/ActionManager.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/MouseManager14.java trunk/Jmol/src/org/jmol/viewer/StateManager.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java Modified: trunk/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -5341,6 +5341,10 @@ case Token.prompt: prompt(); break; + case Token.redo: + case Token.undo: + undoRedo(); + break; case Token.refresh: refresh(); break; @@ -16845,4 +16849,25 @@ viewer.unBindAction(mouseAction, name); } + private void undoRedo() throws ScriptException { + // Jmol 12.1.46 + int n = 1; + int len = 2; + switch (tokAt(1)) { + case Token.nada: + len = 1; + break; + case Token.all: + n = 0; + break; + case Token.integer: + n = intParameter(1); + break; + default: + error(ERROR_invalidArgument); + } + checkLength(len); + if (!isSyntaxCheck) + viewer.undoAction(tokAt(0), n); + } } Modified: trunk/Jmol/src/org/jmol/script/Token.java =================================================================== --- trunk/Jmol/src/org/jmol/script/Token.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/script/Token.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -332,13 +332,14 @@ final static int push = scriptCommand | 40 | noArgs; //internal only final static int quit = scriptCommand | 41 | noArgs; final static int ramachandran = scriptCommand | 42 | expression; - final static int refresh = scriptCommand | 43 | noArgs; - final static int reset = scriptCommand | 44; - final static int restore = scriptCommand | 45; - public final static int resume = scriptCommand | 46 | noArgs; + public final static int redo = scriptCommand | 43; + final static int refresh = scriptCommand | 44 | noArgs; + final static int reset = scriptCommand | 45; + final static int restore = scriptCommand | 46; + public final static int resume = scriptCommand | 47 | noArgs; final static int rotate = scriptCommand | 48 | defaultON; final static int rotateSelected = scriptCommand | 49; - final static int save = scriptCommand | 50; + public final static int save = scriptCommand | 50; //final static int script see mathfunc public final static int selectionhalos = scriptCommand | 51 | deprecatedparam | defaultON; final static int show = scriptCommand | 52; @@ -353,6 +354,7 @@ final static int translate = scriptCommand | 64; final static int translateSelected = scriptCommand | 66; final static int unbind = scriptCommand | 68; + public final static int undo = scriptCommand | 69; public final static int vibration = scriptCommand | 70; //final static int write see mathfunc final static int zoom = scriptCommand | 72; @@ -801,6 +803,7 @@ public final static int unitcellcolor = strparam | 62; public final static int axesscale = floatparam | 2; + public final static int bonddots = floatparam | 3; // 12.1.46 public final static int bondtolerance = floatparam | 4; public final static int cameradepth = floatparam | 6; public final static int defaultdrawarrowscale = floatparam | 8; @@ -1002,7 +1005,6 @@ public final static int testflag3 = booleanparam | 188; public final static int testflag4 = booleanparam | 190; public final static int tracealpha = booleanparam | 191; - public final static int undo = booleanparam | 192; public final static int usearcball = booleanparam | 193; public final static int useminimizationthread = booleanparam | 194; public final static int usenumberlocalization = booleanparam | 196; @@ -2083,6 +2085,7 @@ "axesScale", new Token(axesscale), "axisScale", null, // legacy + "bondDots", new Token(bonddots), "bondTolerance", new Token(bondtolerance), "cameraDepth", new Token(cameradepth), "defaultDrawArrowScale", new Token(defaultdrawarrowscale), @@ -2261,6 +2264,7 @@ "perspectiveDepth", new Token(perspectivedepth), "preserveState", new Token(preservestate), "rangeSelected", new Token(rangeselected), + "redo", new Token(redo), "refreshing", new Token(refreshing), "ribbonBorder", new Token(ribbonborder), "rocketBarrels", new Token(rocketbarrels), Modified: trunk/Jmol/src/org/jmol/shape/SticksRenderer.java =================================================================== --- trunk/Jmol/src/org/jmol/shape/SticksRenderer.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/shape/SticksRenderer.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -63,6 +63,7 @@ private boolean isAntialiased; private boolean slabbing; private boolean slabByAtom; + private int[] dashDots = null; @Override @@ -70,6 +71,7 @@ slabbing = viewer.getSlabEnabled(); slabByAtom = viewer.getSlabByAtom(); endcaps = Graphics3D.ENDCAPS_SPHERICAL; + dashDots = (viewer.getBondDots() ? dots : dashes); multipleBondSpacing = viewer.getMultipleBondSpacing(); multipleBondRadiusFactor = viewer.getMultipleBondRadiusFactor(); if (multipleBondSpacing > 0) { @@ -80,6 +82,8 @@ p2 = new Point3f(); s1 = new Point3i(); s2 = new Point3i(); + } else if (dashDots == dots) { + s1 = new Point3i(); } showMultipleBonds = multipleBondSpacing != 0 && viewer.getShowMultipleBonds(); modeMultipleBond = viewer.getModeMultipleBond(); @@ -221,7 +225,7 @@ switch (mask) { case -1: - renderHbondDashed(); + drawDashed(xA, yA, zA, xB, yB, zB, hDashes); break; default: drawBond(mask); @@ -260,7 +264,7 @@ } if (bondOrder == 1) { if ((dottedMask & 1) != 0) - drawDashed(xA, yA, zA, xB, yB, zB); + drawDashed(xA, yA, zA, xB, yB, zB, dashDots); else fillCylinder(colixA, colixB, endcaps, width, xA, yA, zA, xB, yB, zB); return; @@ -280,7 +284,7 @@ p1.add(y); p2.add(y); if ((dottedMask & 1) != 0) - drawDashed(s1.x, s1.y, s1.z, s2.x, s2.y, s2.z); + drawDashed(s1.x, s1.y, s1.z, s2.x, s2.y, s2.z, dashDots); else fillCylinder(colixA, colixB, endcaps, width, s1.x, s1.y, s1.z, s2.x, s2.y, s2.z); @@ -297,7 +301,7 @@ resetAxisCoordinates(); while (true) { if ((dottedMask & 1) != 0) - drawDashed(xAxis1, yAxis1, zA, xAxis2, yAxis2, zB); + drawDashed(xAxis1, yAxis1, zA, xAxis2, yAxis2, zB, dashDots); else fillCylinder(colixA, colixB, endcaps, width, xAxis1, yAxis1, zA, xAxis2, yAxis2, zB); @@ -342,46 +346,46 @@ return ((dx * dyAC - dy * dxAC) < 0 ? 2 : 1); } - private void drawDashed(int xA, int yA, int zA, int xB, int yB, int zB) { + private final static int[] dashes = { 12, 0, 0, 2, 5, 7, 10 }; + private final static int[] dots = { 12, 3, 6, 1, 3, 5, 7, 9, 11 }; + private final static int[] hDashes = { 10, 7, 6, 1, 3, 4, 6, 7, 9 }; + + private void drawDashed(int xA, int yA, int zA, int xB, int yB, int zB, int[] array) { int dx = xB - xA; int dy = yB - yA; int dz = zB - zA; - int i = 2; - while (i <= 9) { - int xS = xA + (dx * i) / 12; - int yS = yA + (dy * i) / 12; - int zS = zA + (dz * i) / 12; - i += 3; - int xE = xA + (dx * i) / 12; - int yE = yA + (dy * i) / 12; - int zE = zA + (dz * i) / 12; - i += 2; - fillCylinder(colixA, colixB, Graphics3D.ENDCAPS_FLAT, width, - xS, yS, zS, xE, yE, zE); + int f = array[0]; + int ptS = array[1]; // when starting point color is set (or 0) + int ptE = array[2]; // when ending point color is set (or 0) + short colixS = colixA; + short colixE = colixB; + for (int pt = 3; pt < array.length; pt++) { + int i = array[pt]; + int xS = xA + (dx * i) / f; + int yS = yA + (dy * i) / f; + int zS = zA + (dz * i) / f; + if (array == dots) { + s1.set(xS, yS, zS); + if (pt == ptS) + g3d.setColix(colixS); + else if (pt == ptE) + g3d.setColix(colixE); + g3d.fillSphere(width, s1); + continue; + } + if (pt == ptS) + colixS = colixB; + i = array[++pt]; + if (pt == ptE) + colixE = colixB; + int xE = xA + (dx * i) / f; + int yE = yA + (dy * i) / f; + int zE = zA + (dz * i) / f; + fillCylinder(colixS, colixE, Graphics3D.ENDCAPS_FLAT, width, xS, yS, zS, + xE, yE, zE); } } - private void renderHbondDashed() { - int dx = xB - xA; - int dy = yB - yA; - int dz = zB - zA; - int i = 1; - while (i < 10) { - int xS = xA + (dx * i) / 10; - int yS = yA + (dy * i) / 10; - int zS = zA + (dz * i) / 10; - short colixS = i < 5 ? colixA : colixB; - i += 2; - int xE = xA + (dx * i) / 10; - int yE = yA + (dy * i) / 10; - int zE = zA + (dz * i) / 10; - short colixE = i < 5 ? colixA : colixB; - ++i; - fillCylinder(colixS, colixE, Graphics3D.ENDCAPS_FLAT, width, - xS, yS, zS, xE, yE, zE); - } - } - private void fillCylinder(short colixA, short colixB, byte endcaps, int diameter, int xA, int yA, int zA, int xB, int yB, int zB) { Modified: trunk/Jmol/src/org/jmol/viewer/ActionManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -808,7 +808,7 @@ // H C + -, etc. // also check valence and add/remove H atoms as necessary? if (measurementPending.getCount() == 2) { - viewer.undoAction(-1, Viewer.ACTION_SAVE, true); + viewer.undoAction(-1, Token.save, true); viewer.script("assign connect " + measurementPending.getMeasurementScript(" ", false)); } else if (pickAtomAssignType.equals("Xx")) { @@ -823,11 +823,11 @@ viewer.undoAction(dragAtomIndex, AtomCollection.TAINT_FORMALCHARGE, true); } else { - viewer.undoAction(-1, Viewer.ACTION_SAVE, true); + viewer.undoAction(-1, Token.save, true); } viewer.script(s); } else if (!isPickAtomAssignCharge) { - viewer.undoAction(-1, Viewer.ACTION_SAVE, true); + viewer.undoAction(-1, Token.save, true); Atom a = viewer.getModelSet().atoms[dragAtomIndex]; if (a.getElementNumber() == 1) { viewer.script("assign atom ({" + dragAtomIndex + "}) \"X\""); @@ -1286,7 +1286,7 @@ || bondPickingMode == PICKING_ASSIGN_BOND ? ACTION_assignNew : ACTION_deleteBond)) { if (bondPickingMode == PICKING_ASSIGN_BOND) - viewer.undoAction(-1, Viewer.ACTION_SAVE, true); + viewer.undoAction(-1, Token.save, true); switch (bondPickingMode) { case PICKING_ASSIGN_BOND: viewer.script("assign bond [{" + nearestPoint.index + "}] \"" Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-05-12 03:02:47 UTC (rev 15455) @@ -3,6 +3,19 @@ version=12.1.46_dev +# new feature: set bondDots -- partial bonds rendered with dots rather than dashes +# new feature: UNDO/REDO commands -- for atom movement or modelkit actions only +# UNDO/UNDO 1 # undo last movement +# UNDO n # undo last n movements +# UNDO 0|ALL # undo all movements +# REDO/REDO 1 # redo last movement +# REDO n # redo last n movements +# REDO 0|ALL # redo all movements +# UNDO -1 # clear UNDO history +# REDO -1 # clear REDO history +# REDO -2/UNDO -2 # clear both histories + +# bug fix: undocumented "redo" "undo" application-only commands changed to "redocmd" "undocmd" # bug fix: FIX command not working properly # bug fix: CTRL-SHIFT-Z not working for "redo" # bug fix: select within(chain, atomno=xxx) will not select all desired atoms Modified: trunk/Jmol/src/org/jmol/viewer/MouseManager14.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/MouseManager14.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/viewer/MouseManager14.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -35,6 +35,7 @@ import java.awt.event.MouseWheelListener; import org.jmol.export.image.ImageCreator; +import org.jmol.script.Token; import org.jmol.util.Escape; import org.jmol.util.Logger; import org.jmol.viewer.binding.Binding; @@ -197,10 +198,10 @@ case 'z': // undo switch (modifiers) { case Binding.CTRL: - viewer.undoAction(0, Viewer.ACTION_UNDO, true); + viewer.undoAction(Token.undo, 1); break; case Binding.CTRL_SHIFT: - viewer.undoAction(0, Viewer.ACTION_REDO, true); + viewer.undoAction(Token.redo, 1); break; } break; @@ -208,7 +209,7 @@ case 'y': // redo switch (modifiers) { case Binding.CTRL: - viewer.undoAction(0, Viewer.ACTION_REDO, true); + viewer.undoAction(Token.redo, 1); break; } break; Modified: trunk/Jmol/src/org/jmol/viewer/StateManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StateManager.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/viewer/StateManager.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -816,6 +816,7 @@ setParameterValue("axesMode", axesMode); setParameterValue("axesScale", axesScale); setParameterValue("axesOrientationRasmol", axesOrientationRasmol); + setParameterValue("bondDots", bondDots); setParameterValue("bondModeOr", bondModeOr); setParameterValue("bondPicking", bondPicking); setParameterValue("bondRadiusMilliAngstroms", bondRadiusMilliAngstroms); @@ -1156,6 +1157,7 @@ //atoms and bonds + boolean bondDots = false; boolean bondModeOr = false; boolean hbondsBackbone = false; float hbondsAngleMinimum = 90f; Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -1867,7 +1867,6 @@ public String openDOM(Object DOMNode) { // applet.loadDOMNode zap(true, true, false); - setBooleanProperty("preserveState", false); return loadModelFromFile("?", "?", null, DOMNode, false, null, null, 0); } @@ -1924,30 +1923,29 @@ } loadScript = new StringBuffer(s); - } else { - if (loadScript == null) - loadScript = new StringBuffer("load /*file*/$FILENAME$"); + + } else if (reader == null) { - if (reader == null) - // 2) a standard, single file + if (loadScript == null) + loadScript = new StringBuffer("load /*file*/$FILENAME$"); + atomSetCollection = getAtomSetCollection(fileName, isAppend, htParams, loadScript); - else if (reader instanceof Reader) + } else if (reader instanceof Reader) { // 3) a file reader (not used by Jmol) atomSetCollection = fileManager.createAtomSetCollectionFromReader( - fullPathName, fileName, (Reader) reader, - htParams = setLoadParameters(null, isAppend)); - else + fullPathName, fileName, (Reader) reader, htParams); + + } else { - // 3) a DOM reader (could be used by Jmol) + // 4) a DOM reader (could be used by Jmol) - atomSetCollection = fileManager.createAtomSetCollectionFromDOM(reader, - htParams = setLoadParameters(null, isAppend)); + atomSetCollection = fileManager.createAtomSetCollectionFromDOM(reader, htParams); } // OK, the file has been read and is now closed. @@ -1957,10 +1955,8 @@ return loadAtomDataAndReturnError(atomSetCollection, tokType); } - if (htParams.containsKey("isData")) { - // fileManager.setFileInfo(saveInfo); + if (htParams.containsKey("isData")) return (String) atomSetCollection; - } // now we fix the load script (possibly) with the full path name if (loadScript != null) { @@ -2102,7 +2098,6 @@ return null; if (!isAppend) zap(true, false/*true*/, false); - setBooleanProperty("preserveState", false); Object atomSetCollection = fileManager.createAtomSeCollectionFromArrayData( arrayData, setLoadParameters(null, isAppend), isAppend); return createModelSetAndReturnError(atomSetCollection, isAppend, null); @@ -2227,7 +2222,7 @@ * * @param atomSetCollection * @param isAppend - * @param loadScript + * @param loadScript if null, then some special method like DOM; turn of preserveState * @return errMsg */ private String createModelSetAndReturnError(Object atomSetCollection, @@ -2561,8 +2556,7 @@ setStringProperty("picking", "assignAtom_C"); setStringProperty("picking", "assignBond_p"); } - actionStates.clear(); - actionStatesRedo.clear(); + undoClear(); } System.gc(); } else { @@ -2576,7 +2570,7 @@ Logger.checkMemory(); } - private void zap(String msg) { +private void zap(String msg) { zap(true, true, false); echoMessage(msg); } @@ -4202,21 +4196,9 @@ return "script processing stepped"; if (checkHalt(str, isInterrupt)) return "script execution halted"; - if (checkUndo(str)) - return "OK - " + str; return null; } - private boolean checkUndo(String str) { - if (str.equalsIgnoreCase("redo")) - undoAction(0, ACTION_REDO, true); - else if (str.equalsIgnoreCase("undo")) - undoAction(0, ACTION_UNDO, true); - else - return false; - return true; - } - public boolean usingScriptQueue() { return global.useScriptQueue; } @@ -6004,6 +5986,10 @@ boolean found = true; boolean doRepaint = true; switch (tok) { + case Token.bonddots: + // Jmol 12.1.46 + global.bondDots = value; + break; case Token.legacyautobonding: global.legacyAutoBonding = value; break; @@ -6066,6 +6052,7 @@ // 11.9.23 global.preserveState = value; modelSet.setPreserveState(value); + undoClear(); break; case Token.strutsmultiple: // 11.9.23 @@ -8784,6 +8771,7 @@ try { if (doClear) zap("" + er); // get some breathing room + undoClear(); setCursor(Viewer.CURSOR_DEFAULT); setBooleanProperty("refreshing", true); Logger.error("viewer handling error condition: " + er); @@ -9380,12 +9368,49 @@ private final static int MAX_ACTION_UNDO = 100; private final List<String> actionStates = new ArrayList<String>(); private final List<String> actionStatesRedo = new ArrayList<String>(); - final static int ACTION_SAVE = -1; - final static int ACTION_UNDO = -2; - final static int ACTION_REDO = -3; + // other possibilities include: + // AtomCollection.TAINT_COORD + // AtomCollection.TAINT_FORMALCHARGE private boolean undoWorking = false; + void undoClear() { + actionStates.clear(); + actionStatesRedo.clear(); + } + + /** + * + * @param action Token.undo or Token.redo + * @param n number of steps to go back/forward; 0 for all; -1 for clear; -2 for clear BOTH + * + */ + public void undoAction(int action, int n) { + switch (action) { + case Token.undo: + case Token.redo: + switch (n) { + case -2: + undoClear(); + break; + case -1: + (action == Token.undo ? actionStates : actionStatesRedo).clear(); + break; + case 0: + n = Integer.MAX_VALUE; + // fall through + default: + if (n > MAX_ACTION_UNDO) + n = (action == Token.undo ? actionStates : actionStatesRedo).size(); + for (int i = 0; i < n; i++) + undoAction(0, action, true); + } + break; + } + } + void undoAction(int taintedAtom, int type, boolean clearRedo) { + if (!global.preserveState) + return; int modelIndex = (taintedAtom >= 0 ? modelSet.atoms[taintedAtom].modelIndex : modelSet.getModelCount() - 1); //System.out.print("undoAction " + type + " " + taintedAtom + " modelkit?" @@ -9393,8 +9418,8 @@ //System.out.println(" " + type + " size=" + actionStates.size() + " " // + +actionStatesRedo.size()); switch (type) { - case ACTION_REDO: - case ACTION_UNDO: + case Token.redo: + case Token.undo: // from MouseManager // CTRL-Z: type = 1 UNDO // CTRL-Y: type = -1 REDO @@ -9402,13 +9427,13 @@ String s = ""; List<String> list1; List<String> list2; - switch (type) { + switch (type) { default: - case ACTION_UNDO: + case Token.undo: list1 = actionStates; list2 = actionStatesRedo; break; - case ACTION_REDO: + case Token.redo: list1 = actionStatesRedo; list2 = actionStates; if (actionStatesRedo.size() == 1) @@ -9420,7 +9445,7 @@ undoWorking = true; list2.add(0, list1.remove(0)); s = actionStatesRedo.get(0); - if (type == ACTION_UNDO && list2.size() == 1) { + if (type == Token.undo && list2.size() == 1) { // must save current state, coord, etc. // but this destroys actionStatesRedo int[] pt = new int[] {1}; @@ -9687,4 +9712,8 @@ return refreshing && !creatingImage; } + public boolean getBondDots() { + return global.bondDots; + } + } Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java 2011-05-11 03:10:44 UTC (rev 15454) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/AppConsole.java 2011-05-12 03:02:47 UTC (rev 15455) @@ -315,12 +315,12 @@ void executeCommandAsThread(String strCommand) { if (strCommand == null) strCommand = console.getCommandString().trim(); - if (strCommand.equalsIgnoreCase("undo")) { + if (strCommand.equalsIgnoreCase("undoCmd")) { undoRedo(false); console.appendNewline(); console.setPrompt(); return; - } else if (strCommand.equalsIgnoreCase("redo")) { + } else if (strCommand.equalsIgnoreCase("redoCmd")) { undoRedo(true); console.appendNewline(); console.setPrompt(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-09-27 19:53:32
|
Revision: 16165 http://jmol.svn.sourceforge.net/jmol/?rev=16165&view=rev Author: hansonr Date: 2011-09-27 19:53:24 +0000 (Tue, 27 Sep 2011) Log Message: ----------- version=12.2.RC8_dev # new feature: Jmol Application flags -k and -P # -- -k kiosk mode: like applet, but with a banner across the top # -- -P <port> JSON NIO client mode over port <port> Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/JmolApp.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/BannerFrame.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JsonNioService.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/KioskFrame.java trunk/Jmol/src/org/openscience/molecularplayground/MPJmolApp.java Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-09-27 19:53:24 UTC (rev 16165) @@ -3,6 +3,9 @@ version=12.2.RC8_dev +# new feature: Jmol Application flags -k and -P +# -- -k kiosk mode: like applet, but with a banner across the top +# -- -P <port> JSON NIO client mode over port <port> # code: all references to java.awt and javax.swing isolated to # org.jmol.awt, rg.jmol.export, and org.jmol.multitouch # new feature: Jmol.js adds jmolSwitchToSignedApplet(). Modified: trunk/Jmol/src/org/openscience/jmol/app/JmolApp.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/JmolApp.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/jmol/app/JmolApp.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -161,13 +161,16 @@ ._("no console -- all output to sysout")); options.addOption("p", "printOnly", false, GT ._("send only output from print messages to console (implies -i)")); - options.addOption("P", "port", false, GT - ._("port for JSON/MolecularPlayground-style communication")); options.addOption("t", "threaded", false, GT ._("independent command thread")); options.addOption("x", "exit", false, GT ._("exit after script (implicit with -n)")); + OptionBuilder.withLongOpt("port"); + OptionBuilder.withDescription(GT._("port for JSON/MolecularPlayground-style communication")); + OptionBuilder.hasArg(); + options.addOption(OptionBuilder.create("P")); + OptionBuilder.withLongOpt("script"); OptionBuilder.withDescription(GT ._("script file to execute or '-' for System.in")); @@ -287,7 +290,7 @@ if (line.hasOption("P")) port = Parser.parseInt(line.getOptionValue("P")); if (port > 0) { - commandOptions += "-k"; + commandOptions += "-P"; } @@ -384,7 +387,8 @@ + "1.1.2 or higher version VM!!!"); } - size = historyFile.getWindowSize("Jmol"); + if (!isKiosk) { + size = historyFile.getWindowSize("Jmol"); if (size != null) { startupWidth = size.width; startupHeight = size.height; @@ -397,12 +401,14 @@ border = new Point(12, 116); else border = new Point(b.x, b.y); - // note -- the first time this is run after changes it will not work + // note -- the first time this is run after changes it will not work // because there is a bootstrap problem. + } } - int width = 500; + // INNER frame dimensions + int width = (isKiosk ? 0 : 500); int height = 500; - // INNER frame dimensions + if (line.hasOption("g")) { String geometry = line.getOptionValue("g"); int indexX = geometry.indexOf('x'); @@ -416,7 +422,7 @@ } if (startupWidth <= 0 || startupHeight <= 0) { - if (haveDisplay) { + if (haveDisplay && !isKiosk) { startupWidth = width + border.x; startupHeight = height + border.y; } else { Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/BannerFrame.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/BannerFrame.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/BannerFrame.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -16,7 +16,7 @@ setBackground(Color.WHITE); setSize(width, height); setBounds(0, 0, width, height); - bannerLabel = new JLabel("<html></html>", SwingConstants.CENTER); + bannerLabel = new JLabel("<html>type exitJmol[enter] to quit</html>", SwingConstants.CENTER); bannerLabel.setPreferredSize(getSize()); bannerLabel.setFont(new Font("Helvetica", Font.BOLD, 30)); getContentPane().add(bannerLabel, BorderLayout.CENTER); Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -89,7 +89,7 @@ import javax.swing.SwingConstants; import javax.swing.UIManager; -public class JmolPanel extends JPanel implements SplashInterface { +public class JmolPanel extends JPanel implements SplashInterface, JsonNioClient { /** * The data model. @@ -115,7 +115,8 @@ GuiMap guimap = new GuiMap(); private static int numWindows = 0; - private static Dimension screenSize = null; + private static Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); + int startupWidth, startupHeight; PropertyChangeSupport pcs = new PropertyChangeSupport(this); @@ -139,8 +140,11 @@ String appletContext; static HistoryFile historyFile; + private static KioskFrame kioskFrame; + private static JsonNioService service; private StatusListener myStatusListener; + private static BannerFrame bannerFrame; public JmolPanel(JmolApp jmolApp, Splash splash, JFrame frame, JmolPanel parent, int startupWidth, int startupHeight, @@ -151,10 +155,6 @@ this.startupWidth = startupWidth; this.startupHeight = startupHeight; historyFile = jmolApp.historyFile; - if (jmolApp.isKiosk) { - frame.setUndecorated(true); - frame.setBackground(new Color(0, 0, 0, 0)); - } numWindows++; try { @@ -264,24 +264,27 @@ .getFileAsString(jmolApp.menuFile)); } - // prevent new Jmol from covering old Jmol - if (loc != null) { - frame.setLocation(loc); - } else if (parent == null) { - loc = historyFile.getWindowPosition("Jmol"); - if (loc != null) + if (jmolApp.isKiosk) { + bannerFrame = new BannerFrame(jmolApp.startupWidth, 75); + } else { + // prevent new Jmol from covering old Jmol + if (loc != null) { frame.setLocation(loc); - } else { - loc = parent.frame.getLocationOnScreen(); - int maxX = screenSize.width - 50; - int maxY = screenSize.height - 50; - loc.x += 40; - loc.y += 40; - if (loc.x > maxX || loc.y > maxY) - loc.setLocation(0, 0); - frame.setLocation(loc); + } else if (parent == null) { + loc = historyFile.getWindowPosition("Jmol"); + if (loc != null) + frame.setLocation(loc); + } else { + loc = parent.frame.getLocationOnScreen(); + int maxX = screenSize.width - 50; + int maxY = screenSize.height - 50; + loc.x += 40; + loc.y += 40; + if (loc.x > maxX || loc.y > maxY) + loc.setLocation(0, 0); + frame.setLocation(loc); + } } - frame.getContentPane().add("Center", this); frame.addWindowListener(new AppCloser()); @@ -298,7 +301,8 @@ AppConsole console = (AppConsole) viewer.getProperty("DATA_API", "getAppConsole", null); if (console != null && console.jcd != null) { - historyFile.repositionWindow(SCRIPT_WINDOW_NAME, console.jcd, 200, 100, !jmolApp.isKiosk); + historyFile.repositionWindow(SCRIPT_WINDOW_NAME, console.jcd, 200, 100, + !jmolApp.isKiosk); } // this just causes problems //c = (Component) viewer.getProperty("DATA_API","getScriptEditor", null); @@ -329,31 +333,63 @@ } protected static void startJmol(JmolApp jmolApp) { - + Dialog.setupUIManager(); - - JFrame jmolFrame = new JFrame(); - + + JFrame jmolFrame; + + if (jmolApp.isKiosk) { + if (jmolApp.startupWidth < 100 || jmolApp.startupHeight < 100) { + jmolApp.startupWidth = screenSize.width; + jmolApp.startupHeight = screenSize.height - 75; + } + jmolFrame = kioskFrame = new KioskFrame(0, 75, jmolApp.startupWidth, + jmolApp.startupHeight, null); + } else { + jmolFrame = new JFrame(); + } + // now pass these to viewer - + Jmol jmol = null; - + try { if (jmolApp.jmolPosition != null) { jmolFrame.setLocation(jmolApp.jmolPosition); } - + jmol = getJmol(jmolApp, jmolFrame); jmolApp.startViewer(jmol.viewer, jmol.splash); - + } catch (Throwable t) { Logger.error("uncaught exception: " + t); t.printStackTrace(); } - if (jmolApp.haveConsole) - getJavaConsole(jmol); + if (jmolApp.haveConsole) + getJavaConsole(jmol); + + if (jmolApp.isKiosk) + kioskFrame.setPanel(jmol); + bannerFrame.setLabel("click below and type exitJmol[enter] to quit"); + jmol.viewer.script("set allowKeyStrokes;set zoomLarge false"); + if (jmolApp.port > 0) { + try { + service = new JsonNioService(); + service.setContentPath("./%ID%.json"); + service.setTerminatorMessage("NEXT_SCRIPT"); + service.startService(jmolApp.port, jmol, jmol.viewer); + } catch (Throwable e) { + e.printStackTrace(); + if (bannerFrame != null) { + bannerFrame.setLabel("could not start NIO service on port " + jmolApp.port); + } + if (service != null) + service.close(); + } + + } } private static void getJavaConsole(Jmol jmol) { @@ -434,8 +470,6 @@ System.err.println("Error loading L&F: " + exc); } - screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - if (splash != null) splash.showStatus(GT._("Initializing Jmol...")); @@ -1508,5 +1542,20 @@ GT.setDoTranslate(doTranslate); guimap.updateLabels(); } + + public void nioClosed() { + if (bannerFrame != null) { + viewer.scriptWait("delay 2"); + bannerFrame.dispose(); + } + viewer.setModeMouse(JmolConstants.MOUSE_NONE); + // would not nec. have to close this.... + System.exit(0); + } + + public void setBannerLabel(String label) { + if (bannerFrame != null) + bannerFrame.setLabel(label); + } } Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JsonNioService.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JsonNioService.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JsonNioService.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -33,7 +33,6 @@ protected long lastMoveTime; protected boolean wasSpinOn; - private String defaultScript = ""; protected String contentPath = "./%ID%/%ID%.json"; protected String terminatorMessage = "NEXT_SCRIPT"; @@ -50,10 +49,6 @@ contentPath = path; } - public void setDefaultScript(String script) { - defaultScript = script; - } - public void setTerminatorMessage(String msg) { terminatorMessage = msg; } @@ -66,10 +61,9 @@ jmolViewer.setJmolCallbackListener(this); System.out.println("JsonNioService using port " + port); - System.out.println("defaultScript=" + defaultScript); System.out.println("contentPath=" + contentPath); - jmolViewer.script(defaultScript + ";sync on;sync slave"); + jmolViewer.script(";sync on;sync slave"); inSocket = openSocket("127.0.0.1", port); outSocket = openSocket("127.0.0.1", port); Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/KioskFrame.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/KioskFrame.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/KioskFrame.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -1,22 +1,26 @@ package org.openscience.jmol.app.jmolpanel; import java.awt.Color; -import java.awt.Container; import javax.swing.JFrame; import javax.swing.JPanel; public class KioskFrame extends JFrame { - public KioskFrame(int width, int height, JPanel kioskPanel) { + public KioskFrame(int x, int y, int width, int height, JPanel kioskPanel) { setTitle("KioskFrame"); setUndecorated(true); setBackground(new Color(0, 0, 0, 0)); - Container contentPane = getContentPane(); - contentPane.add(kioskPanel); + setPanel(kioskPanel); setSize(width, height); - setBounds(0, 0, width, height); + setBounds(x, y, width, height); setVisible(true); } + + void setPanel(JPanel kioskPanel) { + if (kioskPanel == null) + return; + getContentPane().add(kioskPanel); + } } Modified: trunk/Jmol/src/org/openscience/molecularplayground/MPJmolApp.java =================================================================== --- trunk/Jmol/src/org/openscience/molecularplayground/MPJmolApp.java 2011-09-27 18:20:07 UTC (rev 16164) +++ trunk/Jmol/src/org/openscience/molecularplayground/MPJmolApp.java 2011-09-27 19:53:24 UTC (rev 16165) @@ -105,7 +105,7 @@ private void startJsonNioKiosk(int port) { KioskPanel kioskPanel = new KioskPanel(); bannerFrame = new BannerFrame(1024, 75); - kioskFrame = new KioskFrame(1024, 768, kioskPanel); + kioskFrame = new KioskFrame(0, 75, 1024, 768 - 75, kioskPanel); /* * Separate sockets are used for incoming and outgoing messages, @@ -115,15 +115,17 @@ */ try { + setBannerLabel("click below and type exitJmol[enter] to quit"); + jmolViewer.script("set allowKeyStrokes;set zoomLarge false;set frank off;set antialiasdisplay off"); service = new JsonNioService(); service.setContentPath(System.getProperty("user.dir").replace('\\', '/') + "/Content-Cache/%ID%/%ID%.json"); - service - .setDefaultScript("set allowKeyStrokes;set frank off;set antialiasdisplay off"); service.setTerminatorMessage("MP_DONE"); service.startService(port, this, jmolViewer); + + // Bob's demo model jmolViewer.script("load http://chemapps.stolaf.edu/jmol/docs/examples-12/data/caffeine.xyz"); - setBannerLabel("type 'exitJmol' to quit"); + } catch (Throwable e) { e.printStackTrace(); if (service == null) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-23 21:33:38
|
Revision: 16527 http://jmol.svn.sourceforge.net/jmol/?rev=16527&view=rev Author: hansonr Date: 2011-11-23 21:33:32 +0000 (Wed, 23 Nov 2011) Log Message: ----------- version=12.3.7 # code: MPJmolApp work # bug fix: user variables being reset by INITIALIZE Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/StateManager.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/molecularplayground/MPJmolApp.java trunk/Jmol/src/org/molecularplayground/MPJmolAppConfig.spt trunk/Jmol/src/org/openscience/jmol/app/jsonkiosk/JsonNioService.java Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-23 21:33:32 UTC (rev 16527) @@ -3,6 +3,8 @@ version=12.3.7 +# code: MPJmolApp work +# bug fix: user variables being reset by INITIALIZE # new feature: "Write PNG+JMOL" added to application and signed applet menu # code: dispensing with InputStream in favor of BufferedInputStream # new feature: write PNGJ Modified: trunk/Jmol/src/org/jmol/viewer/StateManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StateManager.java 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/jmol/viewer/StateManager.java 2011-11-23 21:33:32 UTC (rev 16527) @@ -662,6 +662,7 @@ if (g != null) { //persistent values not reset with the "initialize" command + htUserVariables = g.htUserVariables; // 12.3.7, 12.2.7 debugScript = g.debugScript; disablePopupMenu = g.disablePopupMenu; messageStyleChime = g.messageStyleChime; Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2011-11-23 21:33:32 UTC (rev 16527) @@ -8924,7 +8924,7 @@ dir = "."; } dir = fileManager.getDefaultDirectory(dir - + (dir.equals("=") || dir.endsWith("/") ? "" : "/X")); + + (dir.equals("=") ? "" : dir.endsWith("/") ? "X" : "/X")); if (dir.length() > 0) setStringProperty("defaultDirectory", dir); String path = fileManager.getFilePath(dir + "/", true, false); Modified: trunk/Jmol/src/org/molecularplayground/MPJmolApp.java =================================================================== --- trunk/Jmol/src/org/molecularplayground/MPJmolApp.java 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/molecularplayground/MPJmolApp.java 2011-11-23 21:33:32 UTC (rev 16527) @@ -111,7 +111,7 @@ protected JmolViewer jmolViewer; public static void main(String args[]) { - new MPJmolApp(args.length > 1 ? Integer.parseInt(args[1]) : 31416); + new MPJmolApp(args.length > 0 ? Integer.parseInt(args[0]) : 31416); } public MPJmolApp() { Modified: trunk/Jmol/src/org/molecularplayground/MPJmolAppConfig.spt =================================================================== --- trunk/Jmol/src/org/molecularplayground/MPJmolAppConfig.spt 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/molecularplayground/MPJmolAppConfig.spt 2011-11-23 21:33:32 UTC (rev 16527) @@ -1,14 +1,13 @@ -NIOcontentScript="biophysics/biophysics.spt" -contentdir = "biophysics/" +topicdir = "biophysics/" +NIOcontentScript=topicdir + "biophysics.spt" +cd @topicdir function loadModel(jmolFile,more,banner) { if (!jmolFile) { return } zap var msg = "banner:" + banner message @msg - cd "" - cd @contentdir load @jmolFile - if (more) { script @more } - delay 30 + if (more) { script inline @more } + delay 120 } \ No newline at end of file Modified: trunk/Jmol/src/org/openscience/jmol/app/jsonkiosk/JsonNioService.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jsonkiosk/JsonNioService.java 2011-11-23 21:30:17 UTC (rev 16526) +++ trunk/Jmol/src/org/openscience/jmol/app/jsonkiosk/JsonNioService.java 2011-11-23 21:33:32 UTC (rev 16527) @@ -243,50 +243,56 @@ // inSocket listens for JSON commands from the NIO server // when initialized, it identifies itself to the server as the "out" connection - inSocket = openSocket("127.0.0.1", port); - inSocket.setPacketReader(new AsciiLinePacketReader()); - inSocket.setPacketWriter(new RawPacketWriter()); - inSocket.listen(new SocketObserver() { + if (port != 0) { + inSocket = openSocket("127.0.0.1", port); + inSocket.setPacketReader(new AsciiLinePacketReader()); + inSocket.setPacketWriter(new RawPacketWriter()); + inSocket.listen(new SocketObserver() { - public void connectionOpened(NIOSocket nioSocket) { - initialize("out", nioSocket); - } + public void connectionOpened(NIOSocket nioSocket) { + initialize("out", nioSocket); + } - public void packetReceived(NIOSocket socket, byte[] packet) { - processMessage(packet, null); - } + public void packetReceived(NIOSocket socket, byte[] packet) { + processMessage(packet, null); + } - public void connectionBroken(NIOSocket nioSocket, Exception exception) { - halt = true; - Logger.info(Thread.currentThread().getName() + " inSocket connectionBroken"); - } - }); + public void connectionBroken(NIOSocket nioSocket, Exception exception) { + halt = true; + Logger.info(Thread.currentThread().getName() + + " inSocket connectionBroken"); + } + }); - // outSocket is used to send JSON commands to the NIO server - // when initialized, it identifies itself to the server as the "in" connection + // outSocket is used to send JSON commands to the NIO server + // when initialized, it identifies itself to the server as the "in" connection - outSocket = openSocket("127.0.0.1", port); - outSocket.setPacketReader(new AsciiLinePacketReader()); - outSocket.setPacketWriter(new RawPacketWriter()); - outSocket.listen(new SocketObserver() { + outSocket = openSocket("127.0.0.1", port); + outSocket.setPacketReader(new AsciiLinePacketReader()); + outSocket.setPacketWriter(new RawPacketWriter()); + outSocket.listen(new SocketObserver() { - public void connectionOpened(NIOSocket nioSocket) { - initialize("in", nioSocket); - } + public void connectionOpened(NIOSocket nioSocket) { + initialize("in", nioSocket); + } - public void packetReceived(NIOSocket nioSocket, byte[] packet) { - System.out.println("outpacketreceived"); - // not used - } + public void packetReceived(NIOSocket nioSocket, byte[] packet) { + System.out.println("outpacketreceived"); + // not used + } - public void connectionBroken(NIOSocket nioSocket, Exception exception) { - halt = true; - Logger.info(Thread.currentThread().getName() + " outSocket connectionBroken"); - } - }); + public void connectionBroken(NIOSocket nioSocket, Exception exception) { + halt = true; + Logger.info(Thread.currentThread().getName() + + " outSocket connectionBroken"); + } + }); + } thread = new Thread(new JsonNioThread(), "JsonNiosThread" + myName); thread.start(); + if (port == 0 && contentDisabled) + client.nioRunContent(this); } private void setEnabled() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-12-21 02:23:53
|
Revision: 16611 http://jmol.svn.sourceforge.net/jmol/?rev=16611&view=rev Author: hansonr Date: 2011-12-21 02:23:45 +0000 (Wed, 21 Dec 2011) Log Message: ----------- version=12.3.10_dev # new feature: Application -- press and hold animation next/prev button to continuously run animation Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/ActionManager.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java Modified: trunk/Jmol/src/org/jmol/viewer/ActionManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2011-12-20 21:28:51 UTC (rev 16610) +++ trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2011-12-21 02:23:45 UTC (rev 16611) @@ -1554,11 +1554,11 @@ break; } } catch (InterruptedException ie) { - Logger.info("Timeout " + this + " interrupted"); + //Logger.info("Timeout " + this + " interrupted"); } catch (Exception ie) { Logger.info("Timeout " + name + " Exception: " + ie); } - System.out.println("timeout done:" + name); + //System.out.println("timeout done:" + name); timeouts.remove(name); } } Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-12-20 21:28:51 UTC (rev 16610) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2011-12-21 02:23:45 UTC (rev 16611) @@ -3,6 +3,7 @@ version=12.3.10_dev +# new feature: Application -- press and hold animation next/prev button to continuously run animation # bug fix: Molecular Playground should allow for set allowGestures OFF to disallow swipe # bug fix: lcaoCartoon dual color p orbitals giving white for one lobe # new feature: set echo myecho SCALE 0.3 -- for image scaling Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2011-12-20 21:28:51 UTC (rev 16610) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/JmolPanel.java 2011-12-21 02:23:45 UTC (rev 16611) @@ -56,6 +56,8 @@ import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.awt.print.PrinterException; @@ -741,7 +743,8 @@ protected AbstractButton createToolbarButton(String key) { ImageIcon ii = JmolResourceHandler.getIconX(key + "Image"); - AbstractButton b = new JButton(ii); + boolean isHoldButton = (key.startsWith("animatePrev") || key.startsWith("animateNext")); + AbstractButton b = (isHoldButton ? new AnimButton(ii, JmolResourceHandler.getStringX(key)) : new JButton(ii)); String isToggleString = JmolResourceHandler.getStringX(key + "Toggle"); if (isToggleString != null) { boolean isToggle = Boolean.valueOf(isToggleString).booleanValue(); @@ -767,7 +770,9 @@ Action a = null; String actionCommand = null; - if (key.endsWith("Script")) { + if (isHoldButton) { + + } else if (key.endsWith("Script")) { actionCommand = JmolResourceHandler.getStringX(key); a = executeScriptAction; } else { @@ -780,7 +785,7 @@ a.addPropertyChangeListener(new ActionChangedListener(b)); b.setEnabled(a.isEnabled()); } else { - b.setEnabled(false); + b.setEnabled(isHoldButton); } String tip = guimap.getLabel(key + "Tip"); @@ -1599,5 +1604,36 @@ .getApplicationInterface("jsonkiosk.JsonNioService"); } + private class AnimButton extends JButton implements MouseListener { + + private String script; + + protected AnimButton(ImageIcon ii, String script) { + super(ii); + this.script = script; + addMouseListener(this); + } + + public void mousePressed(MouseEvent e) { + viewer.evalStringQuiet(script); + viewer.evalStringQuiet("timeout '__animBtn' -100 \"" + script + "\""); + } + + public void mouseReleased(MouseEvent e) { + viewer.evalStringQuiet("timeout '__animBtn' OFF"); + } + + public void mouseClicked(MouseEvent e) { + } + + public void mouseEntered(MouseEvent e) { + } + + public void mouseExited(MouseEvent e) { + } + + } + + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2012-02-09 23:09:16
|
Revision: 16764 http://jmol.svn.sourceforge.net/jmol/?rev=16764&view=rev Author: hansonr Date: 2012-02-09 23:09:08 +0000 (Thu, 09 Feb 2012) Log Message: ----------- Models/ModelData Peaks/PeakData Modified Paths: -------------- trunk/Jmol/src/org/jmol/adapter/readers/more/JcampdxReader.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java Modified: trunk/Jmol/src/org/jmol/adapter/readers/more/JcampdxReader.java =================================================================== --- trunk/Jmol/src/org/jmol/adapter/readers/more/JcampdxReader.java 2012-02-09 12:36:13 UTC (rev 16763) +++ trunk/Jmol/src/org/jmol/adapter/readers/more/JcampdxReader.java 2012-02-09 23:09:08 UTC (rev 16764) @@ -41,7 +41,7 @@ import org.jmol.util.Parser; /** - * A preliminary reader for JCAMP-DX files having ##$MODELS= and ##$PEAK_LINKS= records + * A preliminary reader for JCAMP-DX files having ##$MODELS= and ##$PEAKS= records * * Designed by Robert Lancashire and Bob Hanson * @@ -67,7 +67,7 @@ </Models> -- All XML data should be line-oriented in the above fashion. Leading spaces will be ignored. --- Any number of <model> segments can be present +-- Any number of <ModelData> segments can be present -- The first model is referred to as the "base" model -- The base model: -- will generally be of type MOL, but any known type is acceptable @@ -75,12 +75,12 @@ -- will be the only model for NMR -- Additional models can represent vibrations (XYZ format) or MS fragmentation (MOL format, probably) -##$PEAK_LINKS= -<PeakList type="IR" xUnits="1/cm" yUnits="TRANSMITTANCE" > -<Peak id="1" title="asymm stretch of aromatic CH group (~3100 cm-1)" peakShape="broad" model="irvibs.1" xMax="3121" xMin="3081" yMax="1" yMin="0" /> -<Peak id="2" title="symm stretch of aromatic CH group (~3085 cm-1)" peakShape="broad" model="irvibs.2" xMax="3101" xMin="3071" yMax="1" yMin="0" /> +##$PEAKS= +<Peaks type="IR" xUnits="1/cm" yUnits="TRANSMITTANCE" > +<PeakData id="1" title="asymm stretch of aromatic CH group (~3100 cm-1)" peakShape="broad" model="irvibs.1" xMax="3121" xMin="3081" yMax="1" yMin="0" /> +<PeakData id="2" title="symm stretch of aromatic CH group (~3085 cm-1)" peakShape="broad" model="irvibs.2" xMax="3101" xMin="3071" yMax="1" yMin="0" /> ... -</PeakList> +</Peaks> -- peak record must be a single line of information because Jmol will use line.trim() as a key to pass information to JSpecView. @@ -117,12 +117,15 @@ @Override public boolean checkLine() throws Exception { - if (line.startsWith("##$MODELS")) { + int i = line.indexOf("="); + if (i < 0 || !line.startsWith("##")) + return true; + String label = line.substring(0, i).trim(); + if (label.equals("##$MODELS")) { readModels(); - } else if (line.startsWith("##$PEAK") && line.contains("LINKS=")) { - readPeakList(); + } else if (label.equals("##$PEAKS")) { + readPeaks(); } - return true; } @@ -193,7 +196,7 @@ // read model only once for a given ID String key = ";" + modelID + ";"; if (modelIdList.indexOf(key) >= 0) { - discardLinesUntilContains("</ModelData"); + discardLinesUntilContains("</ModelData>"); return null; } modelIdList += key; @@ -264,16 +267,16 @@ private int peakIndex; - private void readPeakList() throws Exception { - discardLinesUntilContains("<PeakList"); + private void readPeaks() throws Exception { + discardLinesUntilContains("<Peaks"); String type = getAttribute(line, "type"); - while (readLine() != null && !(line = line.trim()).startsWith("</PeakList")) - if (line.startsWith("<Peak")) - peakData.add("<Peak file=" + Escape.escape(filePath) + " index=\"" + (++peakIndex) + "\"" + " type=\"" + type + "\" " + line.substring(5).trim()); + while (readLine() != null && !(line = line.trim()).startsWith("</Peaks>")) + if (line.startsWith("<PeakData")) + peakData.add("<PeakData file=" + Escape.escape(filePath) + " index=\"" + (++peakIndex) + "\"" + " type=\"" + type + "\" " + line.substring(9).trim()); } /** - * integrate the <Peak> records into the associated models, and delete unreferenced n.m models + * integrate the <PeakAssignment> records into the associated models, and delete unreferenced n.m models */ @SuppressWarnings("unchecked") private void processPeakData() { Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java 2012-02-09 12:36:13 UTC (rev 16763) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java 2012-02-09 23:09:08 UTC (rev 16764) @@ -365,7 +365,7 @@ } public void syncScript(String script) { - // called from JSpecView to send "Select: <Peak...." script + // called from JSpecView to send "Select: <PeakAssignment...." script jmol.syncScript(script); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2012-03-18 19:53:15
|
Revision: 16907 http://jmol.svn.sourceforge.net/jmol/?rev=16907&view=rev Author: hansonr Date: 2012-03-18 19:53:09 +0000 (Sun, 18 Mar 2012) Log Message: ----------- version=12.3.18 FOR RELEASE # bug fix: allow for alternating list/hash entry: # for example: print getproperty("jspecview","##TITLE")["items"][1]["spectra"][1]["id"] # instead of: print ((getproperty("jspecview","##TITLE")["items"][1])["spectra"][1])["id"] # new feature: JSpecView reads and displays 2D spectra very quickly -- all # tested JCamp-DX 6.0 files readable. -- JSpecView 2.0.10176 # bug fix: GaussianReader not reading "Natural Orbitals" section from # B3LYP 6-31g sp gfprint pop(full,NO) # bug fix: Jmol support for ZIP collection of JDX files read properly # bug fix: support for file reading with BOM UTF-8, UTF-16, or UTF-32 # bug fix: script processor not recognizing UTF-8 Binary Order Mark at start of script # bug fix: (undocumented) POLYHEDRA {...} to {...} with COLOR or TRANSLUCENT fails # bug fix: POLYHEDRA command or COLOR POLYHEDRA can change selection # bug fix: PDB reader doesn't recognize 16 LINK records at start of file # bug fix: script xxxx(xxx)xxx/xx.xxx fails at "(" due to revision 16201 2011-10-02 Revision Links: -------------- http://jmol.svn.sourceforge.net/jmol/?rev=16201&view=rev Modified Paths: -------------- trunk/Jmol/src/org/jmol/script/ScriptMathProcessor.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/PropertyManager.java trunk/Jmol/src/org/jmol/viewer/StatusManager.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java Modified: trunk/Jmol/src/org/jmol/script/ScriptMathProcessor.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2012-03-18 19:53:09 UTC (rev 16907) @@ -597,6 +597,13 @@ } ScriptVariable var1 = xStack[xPt--]; ScriptVariable var = xStack[xPt]; + if (var.tok == Token.varray && var1.tok == Token.string + && var.intValue != Integer.MAX_VALUE) { + // allow for x[1]["test"][1]["here"] + // common in getproperty business + // prior to 12.2/3.18, x[1]["id"] was misread as x[1][0] + var = ScriptVariable.selectItem(var, Integer.MIN_VALUE); + } if (var.tok == Token.hash) { ScriptVariable v = var.mapValue(ScriptVariable.sValue(var1)); xStack[xPt] = (v == null ? ScriptVariable.getVariable("") : v); Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2012-03-18 19:53:09 UTC (rev 16907) @@ -3,6 +3,9 @@ version=12.3.18 +# bug fix: allow for alternating list/hash entry: +# for example: print getproperty("jspecview","##TITLE")["items"][1]["spectra"][1]["id"] +# instead of: print ((getproperty("jspecview","##TITLE")["items"][1])["spectra"][1])["id"] # new feature: JSpecView reads and displays 2D spectra very quickly -- all # tested JCamp-DX 6.0 files readable. -- JSpecView 2.0.10176 # bug fix: GaussianReader not reading "Natural Orbitals" section from Modified: trunk/Jmol/src/org/jmol/viewer/PropertyManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/PropertyManager.java 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/jmol/viewer/PropertyManager.java 2012-03-18 19:53:09 UTC (rev 16907) @@ -96,7 +96,7 @@ "mouseInfo" , "", "", "isosurfaceInfo" , "", "", "consoleText" , "", "", - "jspecView" , "", "", + "jspecView" , "<key>", "", }; private final static int PROP_APPLET_INFO = 0; @@ -383,7 +383,7 @@ case PROP_CONSOLE_TEXT: return viewer.getProperty("DATA_API", "consoleText", null); case PROP_JSPECVIEW: - return viewer.getJspecViewProperties(); + return viewer.getJspecViewProperties(myParam); case PROP_DATA_INFO: return viewer.getData(myParam.toString()); case PROP_ERROR_MESSAGE: Modified: trunk/Jmol/src/org/jmol/viewer/StatusManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StatusManager.java 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/jmol/viewer/StatusManager.java 2012-03-18 19:53:09 UTC (rev 16907) @@ -679,9 +679,10 @@ return outputFileName; } - Map<String, Object> getJspecViewProperties() { - return (jmolStatusListener == null ? null : - jmolStatusListener.getProperty("JSpecView")); + Map<String, Object> getJspecViewProperties(String myParam) { + return (jmolStatusListener == null ? null : jmolStatusListener + .getProperty("JSpecView" + + (myParam == null || myParam.length() == 0 ? "" : ":" + myParam))); } } Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2012-03-18 19:53:09 UTC (rev 16907) @@ -10139,8 +10139,8 @@ return jmolSpectralPeer; } - public Object getJspecViewProperties() { - return statusManager.getJspecViewProperties(); + public Object getJspecViewProperties(Object myParam) { + return statusManager.getJspecViewProperties("" + myParam); } } Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java 2012-03-18 19:52:05 UTC (rev 16906) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/StatusListener.java 2012-03-18 19:53:09 UTC (rev 16907) @@ -423,7 +423,13 @@ } public Map<String, Object> getProperty(String type) { - return (jSpecViewFrame == null ? null : jSpecViewFrame.getProperty(type)); + if (type.toLowerCase().startsWith("jspecview")) { + type = type.substring(9); + if (type.startsWith(":")) + type = type.substring(1); + return (jSpecViewFrame == null ? null : jSpecViewFrame.getProperty(type)); + } + return null; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2015-01-28 16:16:13
|
Revision: 20251 http://sourceforge.net/p/jmol/code/20251 Author: hansonr Date: 2015-01-28 16:16:02 +0000 (Wed, 28 Jan 2015) Log Message: ----------- Jmol.___JmolVersion="14.3.12_2015.01.28" new feature: MUTATE command -- replaces one amino acid group with another -- can read from RCSB or from user-specified file -- examples: mutate 33 lys // uses last occurrence of resno=33 mutate @@3 arg // replaces group of atom 3 in current model mutate @r @g // replaces resno in variable r with group in variable g mutate {r} his // same as above; r must be an atom selection mutate 22 "myfile.cif" // user-defined replacement new feature: resno is user settable Modified Paths: -------------- trunk/Jmol/src/org/jmol/api/JmolBioResolver.java trunk/Jmol/src/org/jmol/api/JmolPropertyManager.java trunk/Jmol/src/org/jmol/modelset/Atom.java trunk/Jmol/src/org/jmol/modelset/AtomCollection.java trunk/Jmol/src/org/jmol/modelset/BondCollection.java trunk/Jmol/src/org/jmol/modelset/Group.java trunk/Jmol/src/org/jmol/modelset/Model.java trunk/Jmol/src/org/jmol/modelset/ModelSet.java trunk/Jmol/src/org/jmol/modelsetbio/BioModel.java trunk/Jmol/src/org/jmol/modelsetbio/BioPolymer.java trunk/Jmol/src/org/jmol/modelsetbio/Monomer.java trunk/Jmol/src/org/jmol/modelsetbio/Resolver.java trunk/Jmol/src/org/jmol/script/ScriptEval.java trunk/Jmol/src/org/jmol/script/ScriptExpr.java trunk/Jmol/src/org/jmol/script/T.java trunk/Jmol/src/org/jmol/scriptext/CmdExt.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/PropertyManager.java trunk/Jmol/src/org/jmol/viewer/StateCreator.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/NBODialog.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java Modified: trunk/Jmol/src/org/jmol/api/JmolBioResolver.java =================================================================== --- trunk/Jmol/src/org/jmol/api/JmolBioResolver.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/api/JmolBioResolver.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -55,6 +55,8 @@ Resolver setViewer(Viewer vwr); public short getGroupID(String g3); + + public boolean mutate(int iatom, String fileName); } Modified: trunk/Jmol/src/org/jmol/api/JmolPropertyManager.java =================================================================== --- trunk/Jmol/src/org/jmol/api/JmolPropertyManager.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/api/JmolPropertyManager.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -42,5 +42,7 @@ String getModelCml(BS bs, int nAtomsMax, boolean addBonds); + String getCoordinateFileData(String atomExpression, String type); + } Modified: trunk/Jmol/src/org/jmol/modelset/Atom.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/Atom.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/Atom.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -419,7 +419,7 @@ return !Float.isNaN(userDefinedVanDerWaalRadius = (radius > 0 ? radius : Float.NaN)); } - public void deleteBonds(BS bsBonds) { + public void delete(BS bsBonds) { valence = -1; if (bonds != null) for (int i = bonds.length; --i >= 0; ) { Modified: trunk/Jmol/src/org/jmol/modelset/AtomCollection.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/AtomCollection.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/AtomCollection.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -88,6 +88,7 @@ String[] atomNames; String[] atomTypes; int[] atomSerials; + int[] atomResnos; int[] atomSeqIDs; public Vibration[] vibrations; float[] occupancies; @@ -147,7 +148,8 @@ final public static byte TAINT_VIBRATION = 12; final public static byte TAINT_ATOMNO = 13; final public static byte TAINT_SEQID = 14; - final public static byte TAINT_MAX = 15; // 1 more than last number, above + final public static byte TAINT_RESNO = 15; + final public static byte TAINT_MAX = 16; // 1 more than last number, above public static String[] userSettableValues; @@ -167,7 +169,7 @@ bsClickable = new BS(); // this allows the Google Closure compiler to skip all the TAINTED defs in Clazz.defineStatics if (userSettableValues == null) - userSettableValues = "atomName atomType coord element formalCharge hydrophobicity ionic occupancy partialCharge temperature valence vanderWaals vibrationVector atomNo seqID".split(" "); + userSettableValues = "atomName atomType coord element formalCharge hydrophobicity ionic occupancy partialCharge temperature valence vanderWaals vibrationVector atomNo seqID resNo".split(" "); } protected void releaseModelSet() { @@ -185,6 +187,7 @@ atomNames = null; atomTypes = null; + atomResnos = null; atomSerials = null; atomSeqIDs = null; vibrations = null; @@ -199,6 +202,7 @@ tainted = mergeModelSet.tainted; atomNames = mergeModelSet.atomNames; atomTypes = mergeModelSet.atomTypes; + atomResnos = mergeModelSet.atomResnos; atomSerials = mergeModelSet.atomSerials; atomSeqIDs = mergeModelSet.atomSeqIDs; vibrations = mergeModelSet.vibrations; @@ -655,6 +659,10 @@ if (setBFactor(i, fValue)) taintAtom(i, TAINT_TEMPERATURE); break; + case T.resno: + setAtomResno(i, iValue); + taintAtom(i, TAINT_RESNO); + break; case T.valence: atom.setValence(iValue); taintAtom(i, TAINT_VALENCE); @@ -796,6 +804,15 @@ return true; } + public boolean setAtomResno(int atomIndex, int resno) { + if (atomResnos == null) { + atomResnos = new int[at.length]; + } + atomResnos[atomIndex] = resno; + at[atomIndex].group.setResno(resno); + return true; + } + public boolean setAtomSeqID(int atomIndex, int seqID) { if (atomSeqIDs == null) { atomSeqIDs = new int[at.length]; @@ -903,6 +920,9 @@ case TAINT_ATOMNO: setAtomNumber(atomIndex, (int) x); break; + case TAINT_RESNO: + setAtomResno(atomIndex, (int) x); + break; case TAINT_SEQID: setAtomSeqID(atomIndex, (int) x); break; @@ -2045,7 +2065,7 @@ * @param specInfo * @return BitSet; or null if we mess up the type */ - protected BS getAtomBitsMDa(int tokType, Object specInfo) { + public BS getAtomBitsMDa(int tokType, Object specInfo) { BS bs = new BS() ; BS bsInfo; BS bsTemp; @@ -2619,6 +2639,8 @@ nAtoms); atomTypes = (String[]) AU.deleteElements(atomTypes, firstAtomIndex, nAtoms); + atomResnos = (int[]) AU.deleteElements(atomResnos, firstAtomIndex, + nAtoms); atomSerials = (int[]) AU.deleteElements(atomSerials, firstAtomIndex, nAtoms); atomSeqIDs = (int[]) AU.deleteElements(atomSeqIDs, firstAtomIndex, Modified: trunk/Jmol/src/org/jmol/modelset/BondCollection.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/BondCollection.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/BondCollection.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -802,5 +802,43 @@ bo[i].setShapeVisibility(isDisplay); } + public BS getAtomsConnected(float min, float max, int intType, BS bs) { + boolean isBonds = bs instanceof BondSet; + BS bsResult = (isBonds ? new BondSet() : new BS()); + int[] nBonded = new int[ac]; + int i; + boolean ishbond = (intType == Edge.BOND_HYDROGEN_MASK); + boolean isall = (intType == Edge.BOND_ORDER_ANY); + for (int ibond = 0; ibond < bondCount; ibond++) { + Bond bond = bo[ibond]; + if (isall || bond.is(intType) || ishbond && bond.isHydrogen()) { + if (isBonds) { + bsResult.set(ibond); + } else { + if (bs.get(bond.atom1.i)) { + nBonded[i = bond.atom2.i]++; + bsResult.set(i); + } + if (bs.get(bond.atom2.i)) { + nBonded[i = bond.atom1.i]++; + bsResult.set(i); + } + } + } + } + if (isBonds) + return bsResult; + boolean nonbonded = (min == 0); + for (i = ac; --i >= 0;) { + int n = nBonded[i]; + if (n < min || n > max) + bsResult.clear(i); + else if (nonbonded && n == 0) + bsResult.set(i); + } + return bsResult; + } + + } Modified: trunk/Jmol/src/org/jmol/modelset/Group.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/Group.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/Group.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -110,10 +110,6 @@ return -1; } - public Group[] getGroups() { - return null; - } - public Object getStructure() { return null; } @@ -165,6 +161,10 @@ return (seqcode == Integer.MIN_VALUE ? 0 : seqcode >> SEQUENCE_NUMBER_SHIFT); } + public void setResno(int i) { + seqcode = getSeqcodeFor(i, getInsertionCode()); + } + public final static int getSeqNumberFor(int seqcode) { return (haveSequenceNumber(seqcode)? seqcode >> SEQUENCE_NUMBER_SHIFT : Integer.MAX_VALUE); @@ -204,9 +204,7 @@ } public char getInsertionCode() { - if (seqcode == Integer.MIN_VALUE) - return '\0'; - return (char)(seqcode & INSERTION_CODE_MASK); + return (seqcode == Integer.MIN_VALUE ? '\0' :(char)(seqcode & INSERTION_CODE_MASK)); } public static int getInsertionCodeFor(int seqcode) { @@ -246,11 +244,6 @@ || bsAdded != null && bsAdded.intersects(bs)); } - boolean isHetero() { - // just look at the first atom of the group - return chain.getAtom(firstAtomIndex).isHetero(); - } - @Override public String toString() { return "[" + getGroup3() + "-" + getSeqcodeString() + "]"; Modified: trunk/Jmol/src/org/jmol/modelset/Model.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/Model.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/Model.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -150,7 +150,7 @@ public int nAltLocs; int nInsertions; - int groupCount = -1; + public int groupCount = -1; protected int chainCount = 0; public Chain[] chains = new Chain[8]; @@ -212,15 +212,6 @@ return chainCount; } - public int getGroupCountHetero(boolean isHetero) { - int n = 0; - for (int i = chainCount; --i >= 0;) - for (int j = chains[i].groupCount; --j >= 0;) - if (chains[i].groups[j].isHetero() == isHetero) - n++; - return n; - } - void calcSelectedGroupsCount(BS bsSelected) { for (int i = chainCount; --i >= 0;) chains[i].calcSelectedGroupsCount(bsSelected); @@ -341,8 +332,8 @@ public void setStructureList(Map<STR, float[]> structureList) { } - public void getChimeInfo(SB sb, int nHetero) { - getChimeInfoM(sb, nHetero); + public void getChimeInfo(SB sb) { + getChimeInfoM(sb, 0); } protected void getChimeInfoM(SB sb, int nHetero) { @@ -360,15 +351,6 @@ // } - /** - * @param bsConformation - * @param conformationIndex - * @return true for BioModel - */ - public boolean getPdbConformation(BS bsConformation, int conformationIndex) { - return false; - } - public String getFullPDBHeader() { return null; } @@ -529,4 +511,15 @@ // biomodel only } + /** + * @param conformationIndex + * @param doSet + * @param bsAtoms + * @param bs + */ + public void getConformation(int conformationIndex, boolean doSet, BS bsAtoms, + BS bs) { + // biomodel only + } + } Modified: trunk/Jmol/src/org/jmol/modelset/ModelSet.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/ModelSet.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelset/ModelSet.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -984,7 +984,7 @@ * * @return full array of groups in modelSet */ - public Group[] getGroups() { + Group[] getGroups() { int n = 0; for (int i = 0; i < mc; i++) n += am[i].getGroupCount(); @@ -1379,28 +1379,11 @@ return bsAtoms; } - public BS getConformation(int modelIndex, int conformationIndex, boolean doSet) { + public BS getConformation(int modelIndex, int conformationIndex, boolean doSet, BS bsAtoms) { BS bs = new BS(); for (int i = mc; --i >= 0;) - if (i == modelIndex || modelIndex < 0) { - String altLocs = getAltLocListInModel(i); - int nAltLocs = getAltLocCountInModel(i); - if (conformationIndex > 0 && conformationIndex >= nAltLocs) - continue; - BS bsConformation = vwr.getModelUndeletedAtomsBitSet(i); - if (conformationIndex >= 0) { - if (am[i].getPdbConformation(bsConformation, conformationIndex)) - for (int c = nAltLocs; --c >= 0;) - if (c != conformationIndex) - bsConformation.andNot(getAtomBitsMDa(T.spec_alternate, - altLocs.substring(c, c + 1))); - } - if (bsConformation.nextSetBit(0) >= 0) { - bs.or(bsConformation); - if (doSet) - am[i].setConformation(bsConformation); - } - } + if (i == modelIndex || modelIndex < 0) + am[i].getConformation(conformationIndex, doSet, bsAtoms, bs); return bs; } @@ -2979,42 +2962,6 @@ return sb.toString(); } - public BS getAtomsConnected(float min, float max, int intType, BS bs) { - boolean isBonds = bs instanceof BondSet; - BS bsResult = (isBonds ? new BondSet() : new BS()); - int[] nBonded = new int[ac]; - int i; - boolean ishbond = (intType == Edge.BOND_HYDROGEN_MASK); - boolean isall = (intType == Edge.BOND_ORDER_ANY); - for (int ibond = 0; ibond < bondCount; ibond++) { - Bond bond = bo[ibond]; - if (isall || bond.is(intType) || ishbond && bond.isHydrogen()) { - if (isBonds) { - bsResult.set(ibond); - } else { - if (bs.get(bond.atom1.i)) { - nBonded[i = bond.atom2.i]++; - bsResult.set(i); - } - if (bs.get(bond.atom2.i)) { - nBonded[i = bond.atom1.i]++; - bsResult.set(i); - } - } - } - } - if (isBonds) - return bsResult; - boolean nonbonded = (min == 0); - for (i = ac; --i >= 0;) { - int n = nBonded[i]; - if (n < min || n > max) - bsResult.clear(i); - else if (nonbonded && n == 0) - bsResult.set(i); - } - return bsResult; - } public SymmetryInterface getSymTemp(boolean forceNew) { return (symTemp == null || forceNew ? (symTemp = Interface.getSymmetry(vwr, "ms")) : symTemp); } @@ -3198,7 +3145,7 @@ BS bsBonds = new BS(); for (int i = bs.nextSetBit(0); i >= 0 && i < ac; i = bs .nextSetBit(i + 1)) - at[i].deleteBonds(bsBonds); + at[i].delete(bsBonds); for (int i = 0; i < mc; i++) { am[i].bsAtomsDeleted.or(bs); am[i].bsAtomsDeleted.and(am[i].bsAtoms); @@ -3223,15 +3170,6 @@ if (vibrations != null) for (int i = i0; i < ac; i++) vibrations[i] = vibrations[map[i]]; - if (occupancies != null) - for (int i = i0; i < ac; i++) - occupancies[i] = occupancies[map[i]]; - if (bfactor100s != null) - for (int i = i0; i < ac; i++) - bfactor100s[i] = bfactor100s[map[i]]; - if (partialCharges != null) - for (int i = i0; i < ac; i++) - partialCharges[i] = partialCharges[map[i]]; if (atomTensorList != null) { for (int i = i0; i < ac; i++) { Object[] list = atomTensorList[i] = atomTensorList[map[i]]; @@ -3250,12 +3188,27 @@ if (atomTypes != null) for (int i = i0; i < ac; i++) atomTypes[i] = atomTypes[map[i]]; + + if (atomResnos != null) + for (int i = i0; i < ac; i++) + atomResnos[i] = atomResnos[map[i]]; if (atomSerials != null) for (int i = i0; i < ac; i++) atomSerials[i] = atomSerials[map[i]]; if (atomSeqIDs != null) for (int i = i0; i < ac; i++) atomSeqIDs[i] = atomSeqIDs[map[i]]; + + if (bfactor100s != null) + for (int i = i0; i < ac; i++) + bfactor100s[i] = bfactor100s[map[i]]; + + if (occupancies != null) + for (int i = i0; i < ac; i++) + occupancies[i] = occupancies[map[i]]; + if (partialCharges != null) + for (int i = i0; i < ac; i++) + partialCharges[i] = partialCharges[map[i]]; } protected void growAtomArrays(int newLength) { @@ -3275,6 +3228,8 @@ atomNames = AU.arrayCopyS(atomNames, newLength); if (atomTypes != null) atomTypes = AU.arrayCopyS(atomTypes, newLength); + if (atomResnos != null) + atomResnos = AU.arrayCopyI(atomResnos, newLength); if (atomSerials != null) atomSerials = AU.arrayCopyI(atomSerials, newLength); if (atomSeqIDs != null) @@ -4067,16 +4022,20 @@ if (!setStructure) return calculateStructuresAllExcept(bsModelsExcluded, asDSSP, doReport, dsspIgnoreHydrogen, false, false); - for (int i = 0; i < mc; i++) - if (!bsModelsExcluded.get(i)) - am[i].clearBioPolymers(); - calculatePolymers(null, 0, 0, bsModelsExcluded); + recalculatePolymers(bsModelsExcluded); String ret = calculateStructuresAllExcept(bsModelsExcluded, asDSSP, doReport, dsspIgnoreHydrogen, true, false); vwr.shm.resetBioshapes(bsAllAtoms); setStructureIndexes(); return ret; } + + public void recalculatePolymers(BS bsModelsExcluded) { + for (int i = 0; i < mc; i++) + if (!bsModelsExcluded.get(i)) + am[i].clearBioPolymers(); + calculatePolymers(getGroups(), -1, 0, bsModelsExcluded); + } } Modified: trunk/Jmol/src/org/jmol/modelsetbio/BioModel.java =================================================================== --- trunk/Jmol/src/org/jmol/modelsetbio/BioModel.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelsetbio/BioModel.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -135,7 +135,6 @@ else if (bioPolymers[i] instanceof AminoPolymer) haveProt = true; } - String s = ""; if (haveProt) s += ((DSSPInterface) Interface.getOption("dssx.DSSP", ms.vwr, "ms")) @@ -153,12 +152,36 @@ bioPolymers[i].setConformation(bsConformation); } + /** + * @param conformationIndex + * @param bs + * @param bsSelected + */ @Override - public boolean getPdbConformation(BS bsConformation, int conformationIndex) { - if (nAltLocs > 0) - for (int i = bioPolymerCount; --i >= 0;) - bioPolymers[i].getConformation(bsConformation, conformationIndex); - return true; + public void getConformation(int conformationIndex, boolean doSet, BS bsSelected, BS bs) { + String altLocs = ms.getAltLocListInModel(modelIndex); + int nAltLocs = ms.getAltLocCountInModel(modelIndex); + if (conformationIndex > 0 && conformationIndex >= nAltLocs) + return; + BS bsConformation = ms.vwr.getModelUndeletedAtomsBitSet(modelIndex); + if (bsSelected != null) + bsConformation.and(bsSelected); + if (bsConformation.nextSetBit(0) < 0) + return; + if (conformationIndex >= 0) { + if (nAltLocs > 0) + for (int i = bioPolymerCount; --i >= 0;) + bioPolymers[i].getConformation(bsConformation, conformationIndex); + for (int c = nAltLocs; --c >= 0;) + if (c != conformationIndex) + bsConformation.andNot(ms.getAtomBitsMDa(T.spec_alternate, + altLocs.substring(c, c + 1))); + } + if (bsConformation.nextSetBit(0) >= 0) { + bs.or(bsConformation); + if (doSet) + setConformation(bsConformation); + } } @Override @@ -283,55 +306,60 @@ @SuppressWarnings("incomplete-switch") @Override - public void getChimeInfo(SB sb, int nHetero) { + public void getChimeInfo(SB sb) { int n = 0; Model[] models = ms.am; int modelCount = ms.mc; int ac = ms.ac; Atom[] atoms = ms.at; - sb.append("\nMolecule name ....... " - + ms.getInfoM("COMPND")); + sb.append("\nMolecule name ....... " + ms.getInfoM("COMPND")); sb.append("\nSecondary Structure . PDB Data Records"); sb.append("\nBrookhaven Code ..... " + ms.modelSetName); for (int i = modelCount; --i >= 0;) n += models[i].getChainCount(false); sb.append("\nNumber of Chains .... " + n); - n = 0; - for (int i = modelCount; --i >= 0;) - n += models[i].getGroupCountHetero(false); - nHetero = 0; - for (int i = modelCount; --i >= 0;) - nHetero += models[i].getGroupCountHetero(true); - sb.append("\nNumber of Groups .... " + n); - if (nHetero > 0) - sb.append(" (" + nHetero + ")"); - for (int i = ac; --i >= 0;) - if (atoms[i].isHetero()) - nHetero++; - getChimeInfoM(sb, nHetero); + int ng = 0; + int ngHetero = 0; + int nHetero = 0; + Map<Group, Boolean> map = new Hashtable<Group, Boolean>(); int nH = 0; int nS = 0; int nT = 0; int id; int lastid = -1; - for (int i = 0; i < ac; i++) { - if (atoms[i].mi != 0) - break; - if ((id = atoms[i].group.getStrucNo()) != lastid && id != 0) { - lastid = id; - switch (atoms[i].group.getProteinStructureType()) { - case HELIX: - nH++; - break; - case SHEET: - nS++; - break; - case TURN: - nT++; - break; + for (int i = ac; --i >= 0;) { + boolean isHetero = atoms[i].isHetero(); + if (isHetero) + nHetero++; + Group g = atoms[i].group; + if (!map.containsKey(g)) { + map.put(g, Boolean.TRUE); + if (isHetero) + ngHetero++; + else + ng++; + } + if (atoms[i].mi == 0) { + if ((id = g.getStrucNo()) != lastid && id != 0) { + lastid = id; + switch (g.getProteinStructureType()) { + case HELIX: + nH++; + break; + case SHEET: + nS++; + break; + case TURN: + nT++; + break; + } } } } + sb.append("\nNumber of Groups .... " + ng); + if (ngHetero > 0) + sb.append(" (" + ngHetero + ")"); + getChimeInfoM(sb, nHetero); sb.append("\nNumber of Helices ... " + nH); sb.append("\nNumber of Strands ... " + nS); sb.append("\nNumber of Turns ..... " + nT); @@ -755,10 +783,8 @@ int groupCount, int baseGroupIndex, BS modelsExcluded) { boolean checkConnections = !ms.vwr.getBoolean(T.pdbsequential); - if (groups == null) { - groups = ms.getGroups(); + if (groupCount < 0) groupCount = groups.length; - } if (modelsExcluded != null) for (int j = 0; j < groupCount; ++j) { Group group = groups[j]; Modified: trunk/Jmol/src/org/jmol/modelsetbio/BioPolymer.java =================================================================== --- trunk/Jmol/src/org/jmol/modelsetbio/BioPolymer.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelsetbio/BioPolymer.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -164,8 +164,34 @@ public void getConformation(BS bsConformation, int conformationIndex) { Atom[] atoms = model.getModelSet().at; - for (int i = monomerCount; --i >= 0;) - monomers[i].getConformation(atoms, bsConformation, conformationIndex); + for (int j = monomerCount; --j >= 0;) { + Monomer m = monomers[j]; + //clear out bits that are not associated with the nth conformation + // counting for each residue from the beginning of the file listing + + // A A + // A B + // A A + // B or B + // B A + // B B + + char ch = '\0'; + for (int i = m.firstAtomIndex, n = m.lastAtomIndex; i <= n; i++) { + Atom atom = atoms[i]; + char altloc = atom.altloc; + // ignore atoms that have no designation + if (altloc == '\0') + continue; + // count down until we get the desired index into the list + if (conformationIndex >= 0 && altloc != ch) { + ch = altloc; + conformationIndex--; + } + if (conformationIndex < 0 && altloc != ch) + bsConformation.clear(i); + } + } recalculateLeadMidpointsAndWingVectors(); } Modified: trunk/Jmol/src/org/jmol/modelsetbio/Monomer.java =================================================================== --- trunk/Jmol/src/org/jmol/modelsetbio/Monomer.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelsetbio/Monomer.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -78,11 +78,6 @@ int monomerIndex; - @Override - public Group[] getGroups() { - return bioPolymer.monomers; - } - void setBioPolymer(BioPolymer polymer, int index) { this.bioPolymer = polymer; monomerIndex = index; @@ -110,7 +105,7 @@ @Override public int getAtomIndex(String name, int offset) { - Group[] groups = getGroups(); + Group[] groups = bioPolymer.monomers; int ipt = monomerIndex + offset; if (ipt >= 0 && ipt < groups.length) { Group m = groups[ipt]; @@ -335,41 +330,6 @@ return (structure instanceof ProteinStructure ? ((ProteinStructure)structure).type.getBioStructureTypeName(false) : ""); } - /** - * clear out bits that are not associated with the nth conformation - * counting for each residue from the beginning of the file listing - * - * - * @param atoms - * @param bsConformation - * @param conformationIndex will be >= 0 - */ - void getConformation(Atom[] atoms, BS bsConformation, int conformationIndex) { - - // A A - // A B - // A A - // B or B - // B A - // B B - - char ch = '\0'; - for (int i = firstAtomIndex; i <= lastAtomIndex; i++) { - Atom atom = atoms[i]; - char altloc = atom.altloc; - // ignore atoms that have no designation - if (altloc == '\0') - continue; - // count down until we get the desired index into the list - if (conformationIndex >= 0 && altloc != ch) { - ch = altloc; - conformationIndex--; - } - if (conformationIndex < 0 && altloc != ch) - bsConformation.clear(i); - } - } - final void updateOffsetsForAlternativeLocations(Atom[] atoms, BS bsSelected) { for (int offsetIndex = offsets.length; --offsetIndex >= 0;) { int offset = offsets[offsetIndex] & 0xFF; Modified: trunk/Jmol/src/org/jmol/modelsetbio/Resolver.java =================================================================== --- trunk/Jmol/src/org/jmol/modelsetbio/Resolver.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/modelsetbio/Resolver.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -41,6 +41,7 @@ import org.jmol.modelset.ModelLoader; import org.jmol.modelset.ModelSet; import org.jmol.script.SV; +import org.jmol.script.ScriptException; import org.jmol.script.T; import org.jmol.util.BSUtil; import org.jmol.util.Edge; @@ -282,7 +283,7 @@ for (int i = 0; i < nH; i++) ms.addAtom(a.mi, a.group, 1, "H", null, 0, a.getSeqID(), 0, xyz, Float.NaN, null, 0, 0, 1, 0, null, isHetero, (byte) 0, null) - .deleteBonds(null); + .delete(null); } private void getBondInfo(JmolAdapter adapter, String group3, Object model) { @@ -539,7 +540,7 @@ Atom atomO = bonds1[j].getOtherAtom(atom1); if (atomO.getElementNumber() == 8) { bsAddedHydrogens.set(atomH.i); - atomH.deleteBonds(bsBondsDeleted); + atomH.delete(bsBondsDeleted); break; } } @@ -1733,6 +1734,88 @@ return (groupID == -1 ? addGroup3Name(group3) : groupID); } + @Override + public boolean mutate(int iatom, String fileName) { + boolean b = vwr.getBoolean(T.appendnew); + Group g = vwr.ms.at[iatom].group; + //try { + // get the initial group -- protein for now + if (!(g instanceof AminoMonomer)) + return false; + AminoMonomer res0 = (AminoMonomer) g; + int ac = vwr.ms.ac; + BS bsRes0 = new BS(); + res0.selectAtoms(bsRes0); + int r = g.getResno(); + // just use a script -- it is much easier! + + String script = "try{var atoms0 = {*}\n" + + "var res0 = " + BS.escape(bsRes0,'(',')') + "\n" + + "set appendNew false\n" + + "load append \""+fileName+"\"\n" + + "set appendNew " + b + "\n" + + "var res1 = {!atoms0};var r1 = res1[1];var r0 = res1[0]\n" + + "if ({r1 & within(group, r0)}){" + + "var haveHs = ({_H and connected(res0)} != 0)\n" + + "if (!haveHs) {delete _H and res1}\n" + + "var sm = '[*.N][*.CA][*.C][*.O]'\n" + + "var keyatoms = res1.find(sm)\n" + + "var x = compare(res1,res0,sm,'BONDS')\n" + + "if(x){\n" + + "rotate branch @x 1\n" + + "compare res1 res0 SMARTS @sm rotate translate 0\n" + + "var N2 = {*.N and !res0 && connected(res0)}\n" + + "var C0 = {*.C and !res0 && connected(res0)}\n" + + "delete res0\n" + + "if (N2) {\n" + + "delete *.OXT and res1\n" + + "connect {N2} {res1 & *.C}\n" + + "}\n" + + "if (C0) {\n" + + "connect {C0} {res1 & *.N}\n" + + "}\n" + + "}\n" + + "}}catch(e){print e}\n"; + try { + vwr.eval.runScript(script); + } catch (ScriptException e) { + // TODO + } + if (vwr.ms.ac == ac) + return false; + // check for protein monomer + g = vwr.ms.at[vwr.ms.ac - 1].group; + if (g != vwr.ms.at[ac + 1].group || !(g instanceof AminoMonomer)) { + BS bsAtoms = new BS(); + g.selectAtoms(bsAtoms); + vwr.deleteAtoms(bsAtoms, false); + return false; + } + AminoMonomer res1 = (AminoMonomer) g; + + // must get new group into old chain + + Group[] groups = res0.chain.groups; + for (int i = groups.length; --i >= 0;) + if (groups[i] == res0) { + groups[i] = res1; + break; + } + res1.setResno(r); + res1.chain.groupCount = 0; + res1.chain = res0.chain; + BS bsExclude = BSUtil.newBitSet2(0, vwr.ms.mc); + bsExclude.clear(res1.chain.model.modelIndex); + res1.chain.model.groupCount = -1; + vwr.ms.recalculatePolymers(bsExclude); + //} catch (Exception e) { + // System.out.println("" + e); + // } + vwr.setBooleanProperty("appendNew", b); + return true; + + } + } Modified: trunk/Jmol/src/org/jmol/script/ScriptEval.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptEval.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/script/ScriptEval.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -2518,6 +2518,7 @@ case T.mapproperty: case T.minimize: case T.modulation: + case T.mutate: case T.data: case T.navigate: case T.plot: Modified: trunk/Jmol/src/org/jmol/script/ScriptExpr.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptExpr.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/script/ScriptExpr.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -1295,8 +1295,7 @@ case T.opGT: return BSUtil.newBitSet2(ival + 1, ac); case T.opEQ: - return (ival < ac ? BSUtil.newBitSet2( - ival, ival + 1) : new BS()); + return (ival < ac ? BSUtil.newBitSet2(ival, ival + 1) : new BS()); case T.opNE: default: bs = BSUtil.setAll(ac); @@ -1319,8 +1318,7 @@ case T.subsystem: case T.configuration: // these are all-inclusive; no need to do a by-atom comparison - return BSUtil.copy(vwr.ms.getConformation(-1, ival - 1, - false)); + return BSUtil.copy(vwr.ms.getConformation(-1, ival - 1, false, null)); case T.symop: propertyBitSet = atom.atomSymmetry; if (propertyBitSet == null) @@ -1360,8 +1358,7 @@ } bitsetComparator = T.none; if (symop < 0) - ia = atom.getCellTranslation(ival, cellRange, - nOps); + ia = atom.getCellTranslation(ival, cellRange, nOps); else ia = atom.getSymmetryTranslation(symop, cellRange, nOps); } else if (nOps > 0) { @@ -1370,8 +1367,7 @@ continue; } if (bitsetComparator == T.opNE) { - if (ival > 0 && ival <= nOps - && !propertyBitSet.get(ival)) { + if (ival > 0 && ival <= nOps && !propertyBitSet.get(ival)) { bs.set(i); } continue; Modified: trunk/Jmol/src/org/jmol/script/T.java =================================================================== --- trunk/Jmol/src/org/jmol/script/T.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/script/T.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -334,8 +334,9 @@ //public final static int model see mathfunc //public final static int measure see mathfunc public final static int move = scriptCommand | 32; - public final static int moveto = scriptCommand | 34; - public final static int navigate = scriptCommand | 35; + public final static int moveto = scriptCommand | 33; + public final static int mutate = scriptCommand | 34; + public final static int navigate = scriptCommand | 35; //public final static int quaternion see mathfunc public final static int parallel = flowCommand | 36; public final static int plot = scriptCommand | 37; @@ -604,7 +605,7 @@ public final static int molecule = intproperty | 16; public final static int polymer = intproperty | 17; public final static int polymerlength = intproperty | 18; - public final static int resno = intproperty | 19; + public final static int resno = intproperty | 19 | settable; public final static int seqid = intproperty | 20; public final static int site = intproperty | 21; public final static int strucno = intproperty | 22; @@ -1756,6 +1757,7 @@ "modulation", "move", "moveTo", + "mutate", "navigate", "navigation", "nbo", @@ -2779,6 +2781,7 @@ modulation, // "modulation" move, // "move" moveto, // "moveTo" + mutate, // "mutate" navigate, // "navigate" -1, // "navigation" nbo, // "nbo" Modified: trunk/Jmol/src/org/jmol/scriptext/CmdExt.java =================================================================== --- trunk/Jmol/src/org/jmol/scriptext/CmdExt.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/scriptext/CmdExt.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -158,6 +158,9 @@ case T.modulation: modulation(); break; + case T.mutate: + mutate(); + break; case T.navigate: navigate(); break; @@ -934,22 +937,30 @@ private void configuration() throws ScriptException { // if (!chk && vwr.getDisplayModelIndex() <= -2) // error(ERROR_backgroundModelError, "\"CONFIGURATION\""); - BS bsAtoms; + BS bsAtoms = null; BS bsSelected = vwr.bsA(); if (slen == 1) { + // configuration bsAtoms = vwr.ms.setConformation(bsSelected); - vwr.ms.addStateScript("select", null, bsSelected, null, - "configuration", true, false); - } else { - int n = intParameter(e.checkLast(1)); + vwr.ms.addStateScript("select", null, bsSelected, null, "configuration", + true, false); if (chk) return; - bsAtoms = vwr.ms.getConformation(vwr.am.cmi, n - 1, - true); - vwr.addStateScript("configuration " + n + ";", true, false); + } else { + int n; + if (isFloatParameter(1)) { + n = intParameter(e.checkLast(1)); + if (chk) + return; + bsAtoms = vwr.ms.getConformation(vwr.am.cmi, n - 1, true, null); + vwr.addStateScript("configuration " + n + ";", true, false); + } else { + bsAtoms = atomExpressionAt(1); + n = intParameter(e.checkLast(e.iToken + 1)); + vwr.addStateScript("configuration " + bsAtoms + " " + n + ";", true, false); + bsAtoms = vwr.ms.getConformation(vwr.am.cmi, n - 1, true, bsAtoms); + } } - if (chk) - return; setShapeProperty(JC.SHAPE_STICKS, "type", Integer.valueOf(Edge.BOND_HYDROGEN_MASK)); e.setShapeSizeBs(JC.SHAPE_STICKS, 0, bsAtoms); @@ -1567,7 +1578,7 @@ } } - public void data() throws ScriptException { + private void data() throws ScriptException { ScriptEval eval = e; String dataString = null; String dataLabel = null; @@ -2175,7 +2186,25 @@ } } - public void navigate() throws ScriptException { + private void mutate() throws ScriptException { + // mutate {resno} "LYS" or "file identifier" + if (tokAt(1) == T.integer) + st[1] =T.o(T.string, "" + st[1].value); // allows @x + int iatom = atomExpressionAt(1).length() - 1; + + // check for last model + if (iatom < 0 || vwr.ms.mc != vwr.ms.at[iatom].mi + 1) + return; + int i = ++e.iToken; + String group = e.optParameterAsString(e.checkLast(i)); + if (chk) + return; + if (tokAt(i) != T.string) + group = "==" + group; + vwr.getJBR().mutate(iatom, group); + } + + private void navigate() throws ScriptException { /* * navigation on/off navigation depth p # would be as a depth value, like * slab, in percent, but could be negative navigation nSec translate X Y # Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-01-28 16:16:02 UTC (rev 20251) @@ -12,13 +12,25 @@ # The quotes above look odd for a parameter file, but they are # important for the JavaScript version of Jmol. -TODO: design and implement sidechain mutation -- MUTATE command ? TODO: remove HTML5 dependency on synchronous file loading (check SCRIPT command for problems) TODO: add 2D graphics panel for Ramachandran and NBO-style 2D graphics -- send to browser as data uri? +Jmol.___JmolVersion="14.3.12_2015.01.28" -Jmol.___JmolVersion="14.3.12_2015.01.27" +new feature: MUTATE command + -- replaces one amino acid group with another + -- can read from RCSB or from user-specified file + -- examples: + mutate 33 lys // uses last occurrence of resno=33 + mutate @@3 arg // replaces group of atom 3 in current model + mutate @r @g // replaces resno in variable r with group in variable g + mutate {r} his // same as above; r must be an atom selection + mutate 22 "myfile.cif" // user-defined replacement + +new feature: resno is user settable +JmolVersion="14.3.12_2015.01.27" + bug fix: select thisModel does not select all atoms in visible frame set new feature: @@3 for "atomno=3 and thisModel" Modified: trunk/Jmol/src/org/jmol/viewer/PropertyManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/PropertyManager.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/viewer/PropertyManager.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -41,6 +41,7 @@ import java.util.Arrays; import java.util.Calendar; +import java.util.Comparator; import java.util.Date; import java.util.Enumeration; import java.util.Hashtable; @@ -82,7 +83,7 @@ @J2SIgnoreImport({ javajs.util.XmlUtil.class }) -public class PropertyManager implements JmolPropertyManager { +public class PropertyManager implements JmolPropertyManager, Comparator<String> { public PropertyManager() { // required for reflection @@ -1209,7 +1210,7 @@ return getChimeInfoA(vwr.ms.at, tok, bs); } SB sb = new SB(); - vwr.ms.am[0].getChimeInfo(sb, 0); + vwr.ms.am[0].getChimeInfo(sb); return sb.appendC('\n').toString().substring(1); } @@ -1657,6 +1658,7 @@ int iModel = atoms[bs.nextSetBit(0)].mi; int iModelLast = -1; boolean isPQR = "PQR".equals(out.getType()); + boolean isBiomodel = false; String occTemp = "%6.2Q%6.2b "; if (isPQR) { occTemp = "%8.4P%7.4V "; @@ -1675,21 +1677,23 @@ int lastAtomIndex = bs.length() - 1; boolean showModels = (iModel != atoms[lastAtomIndex].mi); SB sbCONECT = (showModels ? null : new SB()); + SB sbATOMS = new SB(); boolean isMultipleBondPDB = models[iModel].isPdbWithMultipleBonds; LabelToken[] tokens; P3 ptTemp = new P3(); for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i + 1)) { Atom a = atoms[i]; + isBiomodel = models[a.mi].isBioModel; if (showModels && a.mi != iModelLast) { if (iModelLast != -1) out.append("ENDMDL\n"); iModelLast = a.mi; out.append("MODEL " + (iModelLast + 1) + "\n"); + sbATOMS = new SB(); } String sa = a.getAtomName(); boolean leftJustify = (a.getElementSymbol().length() == 2 || sa.length() >= 4 || PT.isDigit(sa.charAt(0))); - boolean isBiomodel = models[a.mi].isBioModel; boolean isHetero = a.isHetero(); if (!isBiomodel) tokens = (leftJustify ? LabelToken.compile(vwr, @@ -1713,38 +1717,52 @@ "ATOM %5.-5i %-3.3a%1A%3.-3n %1c%4.-4R%1E %8.3x%8.3y%8.3z" + occTemp, '\0', null)); String XX = a.getElementSymbolIso(false).toUpperCase(); - out.append(LabelToken.formatLabelAtomArray(vwr, a, tokens, '\0', null, ptTemp)) + sbATOMS + .append( + LabelToken.formatLabelAtomArray(vwr, a, tokens, '\0', null, + ptTemp)) .append(XX.length() == 1 ? " " + XX : XX.substring(0, 2)) .append(" \n"); - if (!showModels && (!isBiomodel || isHetero || isMultipleBondPDB)) { - Bond[] bonds = a.bonds; - if (bonds != null) - for (int j = 0; j < bonds.length; j++) { - int iThis = a.getAtomNumber(); - Atom a2 = bonds[j].getOtherAtom(a); - if (!bs.get(a2.i)) - continue; - int n = bonds[j].getCovalentOrder(); - if (n == 1 && isMultipleBondPDB && !isHetero) - continue; - int iOther = a2.getAtomNumber(); - switch (n) { - case 2: - case 3: - if (iOther < iThis) - continue; // only one entry in this case -- pseudo-PDB style - //$FALL-THROUGH$ - case 1: - sbCONECT.append("CONECT").append( - PT.formatStringI("%5i", "i", iThis)); - for (int k = 0; k < n; k++) - sbCONECT.append(PT.formatStringI("%5i", "i", iOther)); - sbCONECT.appendC('\n'); - break; + } + boolean doConnect = (!showModels && isBiomodel); + Map<Integer, Integer> map = (doConnect ? new Hashtable<Integer, Integer>() : null); + String sAtoms = fixPDBFormat(sbATOMS.toString(), map); + if (doConnect) { + for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i + 1)) { + Atom a = atoms[i]; + boolean isHetero = a.isHetero(); + if (isHetero || isMultipleBondPDB) { + Bond[] bonds = a.bonds; + if (bonds != null) + for (int j = 0; j < bonds.length; j++) { + int iThis = a.getAtomNumber(); + Atom a2 = bonds[j].getOtherAtom(a); + if (!bs.get(a2.i)) + continue; + int n = bonds[j].getCovalentOrder(); + if (n == 1 && isMultipleBondPDB && !isHetero) + continue; + int iOther = a2.getAtomNumber(); + switch (n) { + case 2: + case 3: + if (iOther < iThis) + continue; // only one entry in this case -- pseudo-PDB style + //$FALL-THROUGH$ + case 1: + sbCONECT.append("CONECT").append( + PT.formatStringI("%5i", "i", map.get(Integer.valueOf(iThis)).intValue())); + String s = PT.formatStringI("%5i", "i", map.get(Integer.valueOf(iOther)).intValue()); + for (int k = 0; k < n; k++) + sbCONECT.append(s); + sbCONECT.appendC('\n'); + break; + } } - } + } } } + out.append(sAtoms); if (showModels) out.append("ENDMDL\n"); else @@ -1752,6 +1770,38 @@ return out.toString(); } + /** + * must re-order by resno and then renumber atoms + * @param s + * @param map + * @return fixed string + */ + private String fixPDBFormat(String s, Map<Integer, Integer> map) { + String[] lines = PT.split(s, "\n"); + Arrays.sort(lines, this); + SB sb = new SB(); + for (int i = 0; i < lines.length; i++) { + s = lines[i]; + int p = PT.parseInt(lines[i].substring(6, 12)); + if (map != null) + map.put(Integer.valueOf(p), Integer.valueOf(i)); + String si = " " + (i + 1); + sb.append(s.substring(0, 6)) + .append(si.substring(si.length() - 5)) + .append(s.substring(11)).append("\n"); + } + return sb.toString(); + } + + @Override + public int compare(String s1, String s2) { + int atA = PT.parseInt(s1.substring(6, 12)); + int atB = PT.parseInt(s2.substring(6, 12)); + int resA = PT.parseInt(s1.substring(22, 26)); + int resB = PT.parseInt(s2.substring(22, 26)); + return (resA < resB ? -1 : resA > resB ? 1 : atA < atB ? -1 + : atA > atB ? 1 : 0); + } /* ********************** * * Jmol Data Frame methods @@ -1941,4 +1991,35 @@ return sb.toString(); } + @Override + public String getCoordinateFileData(String atomExpression, String type) { + String exp = ""; + if (type.equalsIgnoreCase("MOL") || type.equalsIgnoreCase("SDF") + || type.equalsIgnoreCase("V2000") || type.equalsIgnoreCase("V3000") + || type.equalsIgnoreCase("XYZVIB") || type.equalsIgnoreCase("CD") || type.equalsIgnoreCase("JSON")) + return vwr.getModelExtract(atomExpression, false, false, type); + if (type.toLowerCase().indexOf("property_") == 0) + exp = "{selected}.label(\"%{" + type + "}\")"; + else if (type.equalsIgnoreCase("CML")) + return getModelCml(vwr.getAtomBitSet(atomExpression), Integer.MAX_VALUE, true); + else if (type.equalsIgnoreCase("PDB")) + // very crude - no connections -- not used + exp = "{selected and not hetero}.label(\"ATOM %5i %-4a%1A%3.3n %1c%4R%1E %8.3x%8.3y%8.3z%6.2Q%6.2b %2e \").lines" + + "+{selected and hetero}.label(\"HETATM%5i %-4a%1A%3.3n %1c%4R%1E %8.3x%8.3y%8.3z%6.2Q%6.2b %2e \").lines"; + else if (type.equalsIgnoreCase("XYZRN")) + exp = "\"\" + {selected}.size + \"\n\n\"+{selected}.label(\"%-2e %8.3x %8.3y %8.3z %4.2[vdw] 1 [%n]%r.%a#%i\").lines"; + else if (type.startsWith("USER:")) + exp = "{selected}.label(\"" + type.substring(5) + "\").lines"; + else + // if(type.equals("XYZ")) + exp = "\"\" + {selected}.size + \"\n\n\"+{selected}.label(\"%-2e %10.5x %10.5y %10.5z\").lines"; + if (!atomExpression.equals("selected")) + exp = PT.rep(exp, "selected", atomExpression); + String s = (String) vwr.evaluateExpression(exp); + if (type.equalsIgnoreCase("PDB")) + s = fixPDBFormat(s, null); + return s; + } + + } Modified: trunk/Jmol/src/org/jmol/viewer/StateCreator.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StateCreator.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/viewer/StateCreator.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -1539,6 +1539,8 @@ BS[] tainted = vwr.ms.tainted; if (bs != null) for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i + 1)) { + if (atoms[i].isDeleted()) + continue; s.appendI(i + 1).append(" ").append(atoms[i].getElementSymbol()) .append(" ").append(atoms[i].getInfo().replace(' ', '_')).append( " "); @@ -1551,6 +1553,9 @@ case AtomCollection.TAINT_ATOMNO: s.appendI(atoms[i].getAtomNumber()); break; + case AtomCollection.TAINT_RESNO: + s.appendI(atoms[i].group.getResno()); + break; case AtomCollection.TAINT_SEQID: s.appendI(atoms[i].getSeqID()); break; Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -7166,29 +7166,7 @@ @Override public String getData(String atomExpression, String type) { - String exp = ""; - if (type.equalsIgnoreCase("MOL") || type.equalsIgnoreCase("SDF") - || type.equalsIgnoreCase("V2000") || type.equalsIgnoreCase("V3000") - || type.equalsIgnoreCase("XYZVIB") || type.equalsIgnoreCase("CD") || type.equalsIgnoreCase("JSON")) - return getModelExtract(atomExpression, false, false, type); - if (type.toLowerCase().indexOf("property_") == 0) - exp = "{selected}.label(\"%{" + type + "}\")"; - else if (type.equalsIgnoreCase("CML")) - return getModelCml(getAtomBitSet(atomExpression), Integer.MAX_VALUE, true); - else if (type.equalsIgnoreCase("PDB")) - // old crude - exp = "{selected and not hetero}.label(\"ATOM %5i %-4a%1A%3.3n %1c%4R%1E %8.3x%8.3y%8.3z%6.2Q%6.2b %2e \").lines" - + "+{selected and hetero}.label(\"HETATM%5i %-4a%1A%3.3n %1c%4R%1E %8.3x%8.3y%8.3z%6.2Q%6.2b %2e \").lines"; - else if (type.equalsIgnoreCase("XYZRN")) - exp = "\"\" + {selected}.size + \"\n\n\"+{selected}.label(\"%-2e %8.3x %8.3y %8.3z %4.2[vdw] 1 [%n]%r.%a#%i\").lines"; - else if (type.startsWith("USER:")) - exp = "{selected}.label(\"" + type.substring(5) + "\").lines"; - else - // if(type.equals("XYZ")) - exp = "\"\" + {selected}.size + \"\n\n\"+{selected}.label(\"%-2e %10.5x %10.5y %10.5z\").lines"; - if (!atomExpression.equals("selected")) - exp = PT.rep(exp, "selected", atomExpression); - return (String) evaluateExpression(exp); + return getPropertyManager().getCoordinateFileData(atomExpression, type); } public String getModelCml(BS bs, int nAtomsMax, boolean addBonds) { Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/NBODialog.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/NBODialog.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/NBODialog.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -326,7 +326,11 @@ public void nboReport(String s) { nboOutput.setText(s == null ? "" : nboOutput.getText() + s + "\n"); - editPane2.getVerticalScrollBar().setValue(Integer.MAX_VALUE); + try { + editPane2.getVerticalScrollBar().setValue(Integer.MAX_VALUE); + } catch (Exception e) { + // + } } protected void modelCmd() { Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java 2015-01-28 00:19:08 UTC (rev 20250) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java 2015-01-28 16:16:02 UTC (rev 20251) @@ -877,7 +877,12 @@ pt = caretPosition.getOffset(); consoleTextPane.setCaretPosition(pt); - vBar.setValue(Integer.MAX_VALUE); + try { + vBar.setValue(Integer.MAX_VALUE); + } catch (Exception e) { + // + } + } catch (Exception e) { e.printStackTrace(); consoleTextPane.setCaretPosition(getLength()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gu...@us...> - 2015-12-31 15:48:56
|
Revision: 20908 http://sourceforge.net/p/jmol/code/20908 Author: gutow Date: 2015-12-31 15:48:54 +0000 (Thu, 31 Dec 2015) Log Message: ----------- Replace Escape.e with Escape.eP4 for P4 objects in SurfaceTool. Slight speedup. Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/surfacetool/SurfaceTool.java Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-12-31 09:06:06 UTC (rev 20907) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-12-31 15:48:54 UTC (rev 20908) @@ -71,6 +71,8 @@ bug fix: Escape.e(P4) returns value for Escape.e(T3) -- only affects SurfaceTool bug fix: (JSmol only) Java return (int) fValue(x); will return "NaN" instead of "0" for x NaN -- JSmol script 0 + "test" will print "NaN" rather than "0" + +code: replace calls to Escape.e with Escape.eP4 for P4 objects in SurfaceTool, small speedup. JmolVersion="14.5.1_2015.12.23b" Modified: trunk/Jmol/src/org/openscience/jmol/app/surfacetool/SurfaceTool.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/surfacetool/SurfaceTool.java 2015-12-31 09:06:06 UTC (rev 20907) +++ trunk/Jmol/src/org/openscience/jmol/app/surfacetool/SurfaceTool.java 2015-12-31 15:48:54 UTC (rev 20908) @@ -436,10 +436,10 @@ cmd.append(cmdStart).append(idStr).append(" slab none;"); cmd.append(cmdStart).append(idStr); cmd.append(slabCapStr).append(ghostStr).append("-") - .append(Escape.e(slice.leftPlane)); + .append(Escape.eP4(slice.leftPlane)); cmd.append(";").append(cmdStart).append(idStr); cmd.append(slabCapStr).append(ghostStr) - .append(Escape.e(slice.rightPlane)); + .append(Escape.eP4(slice.rightPlane)); cmd.append(";"); vwr.evalStringQuiet(cmd.toString()); return; @@ -462,7 +462,7 @@ } cmd.append("isosurface _slicer").append(name); if (on) { - cmd.append(" plane ").append(Escape.e(plane)) + cmd.append(" plane ").append(Escape.eP4(plane)) .append(" translucent 0.7 ").append(color).append(";"); } else { cmd.append(" off;"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2016-01-07 13:27:54
|
Revision: 20927 http://sourceforge.net/p/jmol/code/20927 Author: hansonr Date: 2016-01-07 13:27:50 +0000 (Thu, 07 Jan 2016) Log Message: ----------- Jmol.___JmolVersion="14.4.1_2016.01.07" code: (JavaScript) refactoring to reduce extraneous file download Modified Paths: -------------- branches/v14_4/Jmol/src/org/jmol/console/ScriptEditor.java branches/v14_4/Jmol/src/org/jmol/io/JmolBinary.java branches/v14_4/Jmol/src/org/jmol/io/JmolUtil.java branches/v14_4/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java branches/v14_4/Jmol/src/org/jmol/script/ScriptCompiler.java branches/v14_4/Jmol/src/org/jmol/script/ScriptEval.java branches/v14_4/Jmol/src/org/jmol/script/ScriptParallelProcessor.java branches/v14_4/Jmol/src/org/jmol/script/ScriptProcessRunnable.java branches/v14_4/Jmol/src/org/jmol/viewer/FileManager.java branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties branches/v14_4/Jmol/src/org/jmol/viewer/OutputManager.java branches/v14_4/Jmol/src/org/jmol/viewer/Viewer.java branches/v14_4/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java trunk/Jmol/src/org/jmol/console/ScriptEditor.java trunk/Jmol/src/org/jmol/io/JmolBinary.java trunk/Jmol/src/org/jmol/io/JmolUtil.java trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java trunk/Jmol/src/org/jmol/script/ScriptCompiler.java trunk/Jmol/src/org/jmol/script/ScriptEval.java trunk/Jmol/src/org/jmol/script/ScriptProcessRunnable.java trunk/Jmol/src/org/jmol/viewer/FileManager.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/OutputManager.java trunk/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java Modified: branches/v14_4/Jmol/src/org/jmol/console/ScriptEditor.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/console/ScriptEditor.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/console/ScriptEditor.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -54,7 +54,7 @@ import org.jmol.api.JmolScriptEditorInterface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; import org.jmol.script.ScriptContext; @@ -602,7 +602,7 @@ String msg = fileText[1]; if (msg != null) { setFilename(filename); - output(JmolBinary.getEmbeddedScript(msg)); + output(FileManager.getEmbeddedScript(msg)); } setVisible(true); } Modified: branches/v14_4/Jmol/src/org/jmol/io/JmolBinary.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/io/JmolBinary.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/io/JmolBinary.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -30,7 +30,6 @@ import java.util.Map; import javajs.api.GenericBinaryDocument; -import javajs.util.Lst; import javajs.util.PT; import javajs.util.Rdr; import javajs.util.SB; @@ -40,7 +39,6 @@ import org.jmol.api.JmolZipUtilities; import org.jmol.util.Logger; import org.jmol.viewer.FileManager; -import org.jmol.viewer.JC; public class JmolBinary { @@ -56,29 +54,6 @@ return this; } - public final static String PMESH_BINARY_MAGIC_NUMBER = "PM\1\0"; - - public static String getEmbeddedScript(String script) { - if (script == null) - return script; - int pt = script.indexOf(JC.EMBEDDED_SCRIPT_TAG); - if (pt < 0) - return script; - int pt1 = script.lastIndexOf("/*", pt); - int pt2 = script.indexOf((script.charAt(pt1 + 2) == '*' ? "*" : "") + "*/", - pt); - if (pt1 >= 0 && pt2 >= pt) - script = script.substring( - pt + JC.EMBEDDED_SCRIPT_TAG.length(), pt2) - + "\n"; - while ((pt1 = script.indexOf(FileManager.JPEG_CONTINUE_STRING)) >= 0) - script = script.substring(0, pt1) - + script.substring(pt1 + FileManager.JPEG_CONTINUE_STRING.length() + 4); - if (Logger.debugging) - Logger.debug(script); - return script; - } - JmolZipUtilities jzu; private JmolZipUtilities getJzu() { @@ -109,39 +84,6 @@ return getJzu().getImage(fm.vwr, fullPathNameOrBytes, echoName, forceSync); } - public static void getFileReferences(String script, Lst<String> fileList) { - for (int ipt = 0; ipt < FileManager.scriptFilePrefixes.length; ipt++) { - String tag = FileManager.scriptFilePrefixes[ipt]; - int i = -1; - while ((i = script.indexOf(tag, i + 1)) >= 0) { - String s = PT.getQuotedStringAt(script, i); - if (s.indexOf("::") >= 0) - s = PT.split(s, "::")[1]; - fileList.addLast(s); - } - } - } - - /** - * check a JmolManifest for a reference to a script file (.spt) - * - * @param manifest - * @return null, "", or a directory entry in the ZIP file - */ - - public static String getManifestScriptPath(String manifest) { - if (manifest.indexOf("$SCRIPT_PATH$") >= 0) - return ""; - String ch = (manifest.indexOf('\n') >= 0 ? "\n" : "\r"); - if (manifest.indexOf(".spt") >= 0) { - String[] s = PT.split(manifest, ch); - for (int i = s.length; --i >= 0;) - if (s[i].indexOf(".spt") >= 0) - return "|" + PT.trim(s[i], "\r\n \t"); - } - return null; - } - public BufferedReader spartanFileGetRdr(String name, String[] info) { String name00 = name; String header = info[1]; Modified: branches/v14_4/Jmol/src/org/jmol/io/JmolUtil.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/io/JmolUtil.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/io/JmolUtil.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -51,6 +51,7 @@ import org.jmol.api.JmolZipUtilities; import org.jmol.util.Escape; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; @@ -271,7 +272,7 @@ if (selectAll || subFileName != null) haveManifest = false; if (useFileManifest && haveManifest) { - String path = JmolBinary.getManifestScriptPath(manifest); + String path = FileManager.getManifestScriptPath(manifest); if (path != null) return JC.NOTE_SCRIPT_FILE + fileName + path + "\n"; } Modified: branches/v14_4/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -26,9 +26,9 @@ import java.io.BufferedReader; -import org.jmol.io.JmolBinary; import org.jmol.jvxl.data.JvxlCoder; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import javajs.util.CU; import javajs.util.P3; @@ -139,7 +139,7 @@ br.mark(4); char[] buf = new char[5]; br.read(buf, 0, 5); - if ((new String(buf)).startsWith(JmolBinary.PMESH_BINARY_MAGIC_NUMBER)) { + if ((new String(buf)).startsWith(FileManager.PMESH_BINARY_MAGIC_NUMBER)) { br.close(); binarydoc = newBinaryDocument(); setStream(fileName, (buf[4] == '\0')); Modified: branches/v14_4/Jmol/src/org/jmol/script/ScriptCompiler.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/script/ScriptCompiler.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/script/ScriptCompiler.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -26,11 +26,11 @@ import org.jmol.util.Escape; import org.jmol.util.CommandHistory; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; import org.jmol.api.Interface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.modelset.BondSet; import org.jmol.modelset.Group; @@ -249,7 +249,7 @@ allowMissingEnd = (scriptExtensions.indexOf("##noendcheck") >= 0); // when typing } haveComments = (script.indexOf("#") >= 0); // speeds processing - return JmolBinary.getEmbeddedScript(script); + return FileManager.getEmbeddedScript(script); } private void addTokenToPrefix(T token) { @@ -1847,8 +1847,9 @@ if (nTokens == 1) { if (thisFunction != null) vFunctionStack.add(0, thisFunction); - thisFunction = (tokCommand == T.parallel ? newScriptParallelProcessor( - ident, tokCommand) : new ScriptFunction(ident, tokCommand)); + thisFunction = (ScriptFunction) Interface.getInterface( + "org.jmol.script.ScriptParallelProcessor", null, null); + thisFunction.set(ident, T.parallel); htUserFunctions.put(ident, Boolean.TRUE); flowContext.setFunction(thisFunction); break; // function f @@ -2065,13 +2066,6 @@ return OK; } - private static ScriptFunction newScriptParallelProcessor(String name, int tok) { - ScriptFunction jpp = (ScriptFunction) Interface.getInterface( - "org.jmol.script.ScriptParallelProcessor", null, null); - jpp.set(name, tok); - return jpp; - } - private T setNewSetCommand(boolean isSetBrace, String ident) { tokCommand = T.set; isNewSet = (!isSetBrace && !isUserFunction(ident)); @@ -2287,7 +2281,7 @@ ichCurrentCommand, lineCurrent); if (thisFunction != null) vFunctionStack.add(0, thisFunction); - thisFunction = newScriptParallelProcessor("", tokCommand); + thisFunction = new ScriptFunction("", T.trycmd); flowContext.setFunction(thisFunction); pushContext(ct); break; Modified: branches/v14_4/Jmol/src/org/jmol/script/ScriptEval.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/script/ScriptEval.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/script/ScriptEval.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -55,7 +55,6 @@ import org.jmol.c.STR; import org.jmol.c.VDW; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.modelset.Atom; import org.jmol.modelset.BondSet; @@ -973,7 +972,7 @@ setErrorMessage("io error reading " + data[0] + ": " + data[1]); return false; } - path = JmolBinary.getManifestScriptPath(data[1]); + path = FileManager.getManifestScriptPath(data[1]); } if (path != null && path.length() > 0) { data[0] = filename = filename.substring(0, filename.lastIndexOf("|")) @@ -985,7 +984,7 @@ } } scriptFileName = filename; - data[1] = JmolBinary.getEmbeddedScript(data[1]); + data[1] = FileManager.getEmbeddedScript(data[1]); String script = fixScriptPath(data[1], data[0]); if (scriptPath == null) { scriptPath = vwr.fm.getFilePath(filename, false, false); Modified: branches/v14_4/Jmol/src/org/jmol/script/ScriptParallelProcessor.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/script/ScriptParallelProcessor.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/script/ScriptParallelProcessor.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -42,7 +42,8 @@ * */ - public ScriptParallelProcessor() { + public ScriptParallelProcessor() { + // for reflection } @Override @@ -136,7 +137,7 @@ private void runProcess(final ScriptProcess process, ShapeManager shapeManager) { ScriptProcessRunnable r = new ScriptProcessRunnable(this, process, lock, shapeManager); - Executor exec = (shapeManager == null ? null : (Executor) vwr.getExecutor()); + Executor exec = (shapeManager == null ? null : getMyExecutor()); if (exec != null) { exec.execute(r); } else { @@ -148,4 +149,23 @@ vwr.evalParallel(context, shapeManager); } + private Executor executor; + + private Executor getMyExecutor() { + // a Java 1.5 function + if (executor != null || Viewer.nProcessors < 2) + return executor; // note -- a Java 1.5 function + try { + executor = (Executor) getExecutor(); + } catch (Exception e) { + executor = null; + } catch (Error er) { + executor = null; + } + if (executor == null) + Logger.error("parallel processing is not available"); + return executor; + } + + } Modified: branches/v14_4/Jmol/src/org/jmol/script/ScriptProcessRunnable.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/script/ScriptProcessRunnable.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/script/ScriptProcessRunnable.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -62,7 +62,6 @@ Logger.debug("Process " + process.processName + " complete"); } } catch (Exception e) { - if (this.parallelProcessor.getTok() != T.trycmd) e.printStackTrace(); } catch (Error er) { this.parallelProcessor.clearShapeManager(er); Modified: branches/v14_4/Jmol/src/org/jmol/viewer/FileManager.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/FileManager.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/viewer/FileManager.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -507,7 +507,7 @@ if (dir.length == 0) { String state = vwr.getFileAsString4(fileName, -1, false, true, false, "file"); return (state.indexOf(JC.EMBEDDED_SCRIPT_TAG) < 0 ? "" - : JmolBinary.getEmbeddedScript(state)); + : FileManager.getEmbeddedScript(state)); } for (int i = 0; i < dir.length; i++) if (dir[i].indexOf(".spt") >= 0) { @@ -1122,7 +1122,7 @@ return script; boolean noPath = (dataPath.length() == 0); Lst<String> fileNames = new Lst<String>(); - JmolBinary.getFileReferences(script, fileNames); + FileManager.getFileReferences(script, fileNames); Lst<String> oldFileNames = new Lst<String>(); Lst<String> newFileNames = new Lst<String>(); int nFiles = fileNames.size(); @@ -1325,6 +1325,7 @@ } private final static String DELPHI_BINARY_MAGIC_NUMBER = "\24\0\0\0"; + public final static String PMESH_BINARY_MAGIC_NUMBER = "PM\1\0"; public static boolean isScriptType(String fname) { return PT.isOneOf(fname.toLowerCase().substring(fname.lastIndexOf(".")+1), ";pse;spt;png;pngj;jmol;zip;"); @@ -1406,7 +1407,7 @@ // and thus shifting the offset int pt0 = line.indexOf('\0'); if (pt0 >= 0) { - if (line.indexOf(JmolBinary.PMESH_BINARY_MAGIC_NUMBER) == 0) + if (line.indexOf(FileManager.PMESH_BINARY_MAGIC_NUMBER) == 0) return "Pmesh"; if (line.indexOf(DELPHI_BINARY_MAGIC_NUMBER) == 0) return "DelPhi"; @@ -1479,5 +1480,59 @@ Logger.info("PNGJ recaching " + fileName + " (" + bytes.length + ")"); } + /** + * check a JmolManifest for a reference to a script file (.spt) + * + * @param manifest + * @return null, "", or a directory entry in the ZIP file + */ + + public static String getManifestScriptPath(String manifest) { + if (manifest.indexOf("$SCRIPT_PATH$") >= 0) + return ""; + String ch = (manifest.indexOf('\n') >= 0 ? "\n" : "\r"); + if (manifest.indexOf(".spt") >= 0) { + String[] s = PT.split(manifest, ch); + for (int i = s.length; --i >= 0;) + if (s[i].indexOf(".spt") >= 0) + return "|" + PT.trim(s[i], "\r\n \t"); + } + return null; + } + public static String getEmbeddedScript(String script) { + if (script == null) + return script; + int pt = script.indexOf(JC.EMBEDDED_SCRIPT_TAG); + if (pt < 0) + return script; + int pt1 = script.lastIndexOf("/*", pt); + int pt2 = script.indexOf((script.charAt(pt1 + 2) == '*' ? "*" : "") + "*/", + pt); + if (pt1 >= 0 && pt2 >= pt) + script = script.substring( + pt + JC.EMBEDDED_SCRIPT_TAG.length(), pt2) + + "\n"; + while ((pt1 = script.indexOf(JPEG_CONTINUE_STRING)) >= 0) + script = script.substring(0, pt1) + + script.substring(pt1 + JPEG_CONTINUE_STRING.length() + 4); + if (Logger.debugging) + Logger.debug(script); + return script; + } + + public static void getFileReferences(String script, Lst<String> fileList) { + for (int ipt = 0; ipt < scriptFilePrefixes.length; ipt++) { + String tag = scriptFilePrefixes[ipt]; + int i = -1; + while ((i = script.indexOf(tag, i + 1)) >= 0) { + String s = PT.getQuotedStringAt(script, i); + if (s.indexOf("::") >= 0) + s = PT.split(s, "::")[1]; + fileList.addLast(s); + } + } + } + + } Modified: branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties 2016-01-07 13:27:50 UTC (rev 20927) @@ -7,8 +7,12 @@ # see also http://chemapps.stolaf.edu/jmol/zip for daily updates -Jmol.___JmolVersion="14.4.1_2016.01.06" +Jmol.___JmolVersion="14.4.1_2016.01.07" +code: (JavaScript) refactoring to reduce extraneous file download + +JmolVersion="14.4.1_2016.01.06" + bug fix: labels, echos, and measurements disappear when z-shaded JmolVersion="14.4.1_2016.01.04" Modified: branches/v14_4/Jmol/src/org/jmol/viewer/OutputManager.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/OutputManager.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/viewer/OutputManager.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -17,7 +17,6 @@ import org.jmol.api.Interface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.util.Logger; import org.jmol.viewer.Viewer.ACCESS; @@ -910,9 +909,9 @@ .startsWith(SCENE_TAG)); boolean sceneScriptOnly = (haveSceneScript && scripts[2].equals("min")); if (!sceneScriptOnly) { - JmolBinary.getFileReferences(script, fileNames); + FileManager.getFileReferences(script, fileNames); if (haveSceneScript) - JmolBinary.getFileReferences(scripts[1], fileNames); + FileManager.getFileReferences(scripts[1], fileNames); } boolean haveScripts = (!haveSceneScript && scripts != null && scripts.length > 0); if (haveScripts) { Modified: branches/v14_4/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/Viewer.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/jmol/viewer/Viewer.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -8513,7 +8513,6 @@ // parallel processing - private Object executor; public static int nProcessors = 1; static { /** @@ -8526,23 +8525,6 @@ } - public Object getExecutor() { - // a Java 1.5 function - if (executor != null || nProcessors < 2) - return executor; // note -- a Java 1.5 function - try { - executor = ((JmolParallelProcessor) Interface.getInterface( - "org.jmol.script.ScriptParallelProcessor", null, null)).getExecutor(); - } catch (Exception e) { - executor = null; - } catch (Error er) { - executor = null; - } - if (executor == null) - Logger.error("parallel processing is not available"); - return executor; - } - public boolean displayLoadErrors = true; public void setShapeSize(int shapeID, int mad, BS bsSelected) { Modified: branches/v14_4/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java =================================================================== --- branches/v14_4/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java 2016-01-07 02:41:51 UTC (rev 20926) +++ branches/v14_4/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -73,9 +73,9 @@ import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; +import org.jmol.viewer.FileManager; import org.jmol.viewer.Viewer; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.util.Logger; import org.openscience.jmol.app.jmolpanel.GuiMap; @@ -615,7 +615,7 @@ LogPanel.log(GT._("There was an error in the text encoding so the path to jsmol.zip is unknown.")); } } - JmolBinary.getFileReferences(script, filesToCopy); + FileManager.getFileReferences(script, filesToCopy); ArrayList<String> copiedFileNames = new ArrayList<String>(); int nFiles = filesToCopy.size(); for (int iFile = 0; iFile < nFiles; iFile++) { Modified: trunk/Jmol/src/org/jmol/console/ScriptEditor.java =================================================================== --- trunk/Jmol/src/org/jmol/console/ScriptEditor.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/console/ScriptEditor.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -54,7 +54,7 @@ import org.jmol.api.JmolScriptEditorInterface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; import org.jmol.script.ScriptContext; @@ -602,7 +602,7 @@ String msg = fileText[1]; if (msg != null) { setFilename(filename); - output(JmolBinary.getEmbeddedScript(msg)); + output(FileManager.getEmbeddedScript(msg)); } setVisible(true); } Modified: trunk/Jmol/src/org/jmol/io/JmolBinary.java =================================================================== --- trunk/Jmol/src/org/jmol/io/JmolBinary.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/io/JmolBinary.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -30,7 +30,6 @@ import java.util.Map; import javajs.api.GenericBinaryDocument; -import javajs.util.Lst; import javajs.util.PT; import javajs.util.Rdr; import javajs.util.SB; @@ -40,7 +39,6 @@ import org.jmol.api.JmolZipUtilities; import org.jmol.util.Logger; import org.jmol.viewer.FileManager; -import org.jmol.viewer.JC; public class JmolBinary { @@ -56,29 +54,6 @@ return this; } - public final static String PMESH_BINARY_MAGIC_NUMBER = "PM\1\0"; - - public static String getEmbeddedScript(String script) { - if (script == null) - return script; - int pt = script.indexOf(JC.EMBEDDED_SCRIPT_TAG); - if (pt < 0) - return script; - int pt1 = script.lastIndexOf("/*", pt); - int pt2 = script.indexOf((script.charAt(pt1 + 2) == '*' ? "*" : "") + "*/", - pt); - if (pt1 >= 0 && pt2 >= pt) - script = script.substring( - pt + JC.EMBEDDED_SCRIPT_TAG.length(), pt2) - + "\n"; - while ((pt1 = script.indexOf(FileManager.JPEG_CONTINUE_STRING)) >= 0) - script = script.substring(0, pt1) - + script.substring(pt1 + FileManager.JPEG_CONTINUE_STRING.length() + 4); - if (Logger.debugging) - Logger.debug(script); - return script; - } - JmolZipUtilities jzu; private JmolZipUtilities getJzu() { @@ -109,39 +84,6 @@ return getJzu().getImage(fm.vwr, fullPathNameOrBytes, echoName, forceSync); } - public static void getFileReferences(String script, Lst<String> fileList) { - for (int ipt = 0; ipt < FileManager.scriptFilePrefixes.length; ipt++) { - String tag = FileManager.scriptFilePrefixes[ipt]; - int i = -1; - while ((i = script.indexOf(tag, i + 1)) >= 0) { - String s = PT.getQuotedStringAt(script, i); - if (s.indexOf("::") >= 0) - s = PT.split(s, "::")[1]; - fileList.addLast(s); - } - } - } - - /** - * check a JmolManifest for a reference to a script file (.spt) - * - * @param manifest - * @return null, "", or a directory entry in the ZIP file - */ - - public static String getManifestScriptPath(String manifest) { - if (manifest.indexOf("$SCRIPT_PATH$") >= 0) - return ""; - String ch = (manifest.indexOf('\n') >= 0 ? "\n" : "\r"); - if (manifest.indexOf(".spt") >= 0) { - String[] s = PT.split(manifest, ch); - for (int i = s.length; --i >= 0;) - if (s[i].indexOf(".spt") >= 0) - return "|" + PT.trim(s[i], "\r\n \t"); - } - return null; - } - public BufferedReader spartanFileGetRdr(String name, String[] info) { String name00 = name; String header = info[1]; Modified: trunk/Jmol/src/org/jmol/io/JmolUtil.java =================================================================== --- trunk/Jmol/src/org/jmol/io/JmolUtil.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/io/JmolUtil.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -51,6 +51,7 @@ import org.jmol.api.JmolZipUtilities; import org.jmol.util.Escape; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; @@ -271,7 +272,7 @@ if (selectAll || subFileName != null) haveManifest = false; if (useFileManifest && haveManifest) { - String path = JmolBinary.getManifestScriptPath(manifest); + String path = FileManager.getManifestScriptPath(manifest); if (path != null) return JC.NOTE_SCRIPT_FILE + fileName + path + "\n"; } Modified: trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java =================================================================== --- trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/jvxl/readers/PmeshReader.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -26,9 +26,9 @@ import java.io.BufferedReader; -import org.jmol.io.JmolBinary; import org.jmol.jvxl.data.JvxlCoder; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import javajs.util.CU; import javajs.util.P3; @@ -139,7 +139,7 @@ br.mark(4); char[] buf = new char[5]; br.read(buf, 0, 5); - if ((new String(buf)).startsWith(JmolBinary.PMESH_BINARY_MAGIC_NUMBER)) { + if ((new String(buf)).startsWith(FileManager.PMESH_BINARY_MAGIC_NUMBER)) { br.close(); binarydoc = newBinaryDocument(); setStream(fileName, (buf[4] == '\0')); Modified: trunk/Jmol/src/org/jmol/script/ScriptCompiler.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptCompiler.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/script/ScriptCompiler.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -26,11 +26,11 @@ import org.jmol.util.Escape; import org.jmol.util.CommandHistory; import org.jmol.util.Logger; +import org.jmol.viewer.FileManager; import org.jmol.viewer.JC; import org.jmol.viewer.Viewer; import org.jmol.api.Interface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.modelset.BondSet; import org.jmol.modelset.Group; @@ -249,7 +249,7 @@ allowMissingEnd = (scriptExtensions.indexOf("##noendcheck") >= 0); // when typing } haveComments = (script.indexOf("#") >= 0); // speeds processing - return JmolBinary.getEmbeddedScript(script); + return FileManager.getEmbeddedScript(script); } private void addTokenToPrefix(T token) { @@ -737,8 +737,7 @@ } if (bracketCount > 0 || setBraceCount > 0 || parenCount > 0 || braceCount == 1 && !checkFlowStartBrace(true)) { - error(n == 1 ? ERROR_commandExpected - : ERROR_endOfCommandUnexpected); + error(n == 1 ? ERROR_commandExpected : ERROR_endOfCommandUnexpected); return ERROR; } if (needRightParen) { @@ -1850,8 +1849,9 @@ if (nTokens == 1) { if (thisFunction != null) vFunctionStack.add(0, thisFunction); - thisFunction = (tokCommand == T.parallel ? newScriptParallelProcessor( - ident, tokCommand) : new ScriptFunction(ident, tokCommand)); + thisFunction = (ScriptFunction) Interface.getInterface( + "org.jmol.script.ScriptParallelProcessor", null, null); + thisFunction.set(ident, T.parallel); htUserFunctions.put(ident, Boolean.TRUE); flowContext.setFunction(thisFunction); break; // function f @@ -2068,13 +2068,6 @@ return OK; } - private static ScriptFunction newScriptParallelProcessor(String name, int tok) { - ScriptFunction jpp = (ScriptFunction) Interface.getInterface( - "org.jmol.script.ScriptParallelProcessor", null, null); - jpp.set(name, tok); - return jpp; - } - private T setNewSetCommand(boolean isSetBrace, String ident) { tokCommand = T.set; isNewSet = (!isSetBrace && !isUserFunction(ident)); @@ -2290,7 +2283,7 @@ ichCurrentCommand, lineCurrent); if (thisFunction != null) vFunctionStack.add(0, thisFunction); - thisFunction = newScriptParallelProcessor("", tokCommand); + thisFunction = new ScriptFunction("", T.trycmd); flowContext.setFunction(thisFunction); pushContext(ct); break; Modified: trunk/Jmol/src/org/jmol/script/ScriptEval.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptEval.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/script/ScriptEval.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -55,7 +55,6 @@ import org.jmol.c.STR; import org.jmol.c.VDW; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.modelset.Atom; import org.jmol.modelset.BondSet; @@ -973,7 +972,7 @@ setErrorMessage("io error reading " + data[0] + ": " + data[1]); return false; } - path = JmolBinary.getManifestScriptPath(data[1]); + path = FileManager.getManifestScriptPath(data[1]); } if (path != null && path.length() > 0) { data[0] = filename = filename.substring(0, filename.lastIndexOf("|")) @@ -985,7 +984,7 @@ } } scriptFileName = filename; - data[1] = JmolBinary.getEmbeddedScript(data[1]); + data[1] = FileManager.getEmbeddedScript(data[1]); String script = fixScriptPath(data[1], data[0]); if (scriptPath == null) { scriptPath = vwr.fm.getFilePath(filename, false, false); Modified: trunk/Jmol/src/org/jmol/script/ScriptProcessRunnable.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptProcessRunnable.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/script/ScriptProcessRunnable.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -62,8 +62,7 @@ Logger.debug("Process " + process.processName + " complete"); } } catch (Exception e) { - if (this.parallelProcessor.getTok() != T.trycmd) - e.printStackTrace(); + e.printStackTrace(); } catch (Error er) { this.parallelProcessor.clearShapeManager(er); } finally { Modified: trunk/Jmol/src/org/jmol/viewer/FileManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/FileManager.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/viewer/FileManager.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -507,7 +507,7 @@ if (dir.length == 0) { String state = vwr.getFileAsString4(fileName, -1, false, true, false, "file"); return (state.indexOf(JC.EMBEDDED_SCRIPT_TAG) < 0 ? "" - : JmolBinary.getEmbeddedScript(state)); + : FileManager.getEmbeddedScript(state)); } for (int i = 0; i < dir.length; i++) if (dir[i].indexOf(".spt") >= 0) { @@ -1122,7 +1122,7 @@ return script; boolean noPath = (dataPath.length() == 0); Lst<String> fileNames = new Lst<String>(); - JmolBinary.getFileReferences(script, fileNames); + FileManager.getFileReferences(script, fileNames); Lst<String> oldFileNames = new Lst<String>(); Lst<String> newFileNames = new Lst<String>(); int nFiles = fileNames.size(); @@ -1325,7 +1325,9 @@ } private final static String DELPHI_BINARY_MAGIC_NUMBER = "\24\0\0\0"; + public final static String PMESH_BINARY_MAGIC_NUMBER = "PM\1\0"; + public static boolean isScriptType(String fname) { return PT.isOneOf(fname.toLowerCase().substring(fname.lastIndexOf(".")+1), ";pse;spt;png;pngj;jmol;zip;"); } @@ -1406,7 +1408,7 @@ // and thus shifting the offset int pt0 = line.indexOf('\0'); if (pt0 >= 0) { - if (line.indexOf(JmolBinary.PMESH_BINARY_MAGIC_NUMBER) == 0) + if (line.indexOf(FileManager.PMESH_BINARY_MAGIC_NUMBER) == 0) return "Pmesh"; if (line.indexOf(DELPHI_BINARY_MAGIC_NUMBER) == 0) return "DelPhi"; @@ -1479,5 +1481,59 @@ Logger.info("PNGJ recaching " + fileName + " (" + bytes.length + ")"); } + /** + * check a JmolManifest for a reference to a script file (.spt) + * + * @param manifest + * @return null, "", or a directory entry in the ZIP file + */ + + public static String getManifestScriptPath(String manifest) { + if (manifest.indexOf("$SCRIPT_PATH$") >= 0) + return ""; + String ch = (manifest.indexOf('\n') >= 0 ? "\n" : "\r"); + if (manifest.indexOf(".spt") >= 0) { + String[] s = PT.split(manifest, ch); + for (int i = s.length; --i >= 0;) + if (s[i].indexOf(".spt") >= 0) + return "|" + PT.trim(s[i], "\r\n \t"); + } + return null; + } + public static String getEmbeddedScript(String script) { + if (script == null) + return script; + int pt = script.indexOf(JC.EMBEDDED_SCRIPT_TAG); + if (pt < 0) + return script; + int pt1 = script.lastIndexOf("/*", pt); + int pt2 = script.indexOf((script.charAt(pt1 + 2) == '*' ? "*" : "") + "*/", + pt); + if (pt1 >= 0 && pt2 >= pt) + script = script.substring( + pt + JC.EMBEDDED_SCRIPT_TAG.length(), pt2) + + "\n"; + while ((pt1 = script.indexOf(JPEG_CONTINUE_STRING)) >= 0) + script = script.substring(0, pt1) + + script.substring(pt1 + JPEG_CONTINUE_STRING.length() + 4); + if (Logger.debugging) + Logger.debug(script); + return script; + } + + public static void getFileReferences(String script, Lst<String> fileList) { + for (int ipt = 0; ipt < scriptFilePrefixes.length; ipt++) { + String tag = scriptFilePrefixes[ipt]; + int i = -1; + while ((i = script.indexOf(tag, i + 1)) >= 0) { + String s = PT.getQuotedStringAt(script, i); + if (s.indexOf("::") >= 0) + s = PT.split(s, "::")[1]; + fileList.addLast(s); + } + } + } + + } Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2016-01-07 13:27:50 UTC (rev 20927) @@ -63,8 +63,12 @@ TODO: consider if models with no atoms will cause issues in relation to model.firstAtomIndex -Jmol.___JmolVersion="14.5.1_2016.01.06" +Jmol.___JmolVersion="14.5.1_2016.01.07" +code: (JavaScript) refactoring to reduce extraneous file download + +JmolVersion="14.5.1_2016.01.06" + bug fix: labels, echos, and measurements disappear when z-shaded JmolVersion="14.5.1_2016.01.04" Modified: trunk/Jmol/src/org/jmol/viewer/OutputManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/OutputManager.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/jmol/viewer/OutputManager.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -17,7 +17,6 @@ import org.jmol.api.Interface; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.util.Logger; import org.jmol.viewer.Viewer.ACCESS; @@ -910,9 +909,9 @@ .startsWith(SCENE_TAG)); boolean sceneScriptOnly = (haveSceneScript && scripts[2].equals("min")); if (!sceneScriptOnly) { - JmolBinary.getFileReferences(script, fileNames); + FileManager.getFileReferences(script, fileNames); if (haveSceneScript) - JmolBinary.getFileReferences(scripts[1], fileNames); + FileManager.getFileReferences(scripts[1], fileNames); } boolean haveScripts = (!haveSceneScript && scripts != null && scripts.length > 0); if (haveScripts) { Modified: trunk/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java 2016-01-07 02:41:51 UTC (rev 20926) +++ trunk/Jmol/src/org/openscience/jmol/app/webexport/WebPanel.java 2016-01-07 13:27:50 UTC (rev 20927) @@ -73,9 +73,9 @@ import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; +import org.jmol.viewer.FileManager; import org.jmol.viewer.Viewer; import org.jmol.i18n.GT; -import org.jmol.io.JmolBinary; import org.jmol.java.BS; import org.jmol.util.Logger; import org.openscience.jmol.app.jmolpanel.GuiMap; @@ -615,7 +615,7 @@ LogPanel.log(GT._("There was an error in the text encoding so the path to jsmol.zip is unknown.")); } } - JmolBinary.getFileReferences(script, filesToCopy); + FileManager.getFileReferences(script, filesToCopy); ArrayList<String> copiedFileNames = new ArrayList<String>(); int nFiles = filesToCopy.size(); for (int iFile = 0; iFile < nFiles; iFile++) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2017-04-06 12:09:37
|
Revision: 21485 http://sourceforge.net/p/jmol/code/21485 Author: hansonr Date: 2017-04-06 12:09:34 +0000 (Thu, 06 Apr 2017) Log Message: ----------- Jmol.___JmolVersion="14.11.3" // 2017-04-06 bug fix: partial bond order for orders > 3 not working -- for example: connect {_C} {_C} partial 5.3 bug fix: NBO MODEL loading with no file name goes to wrong directory bug fix: NBO job names need to be cleaned and set if necessary bug fix: some sort of bad build for DSSR Modified Paths: -------------- trunk/Jmol/src/org/gennbo/NBOFileHandler.java trunk/Jmol/src/org/gennbo/NBOModel.java trunk/Jmol/src/org/gennbo/NBORun.java trunk/Jmol/src/org/jmol/render/SticksRenderer.java trunk/Jmol/src/org/jmol/script/ScriptParam.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties Modified: trunk/Jmol/src/org/gennbo/NBOFileHandler.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBOFileHandler.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBOFileHandler.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -356,6 +356,24 @@ return NBOUtil.newNBOFile(inputFile, filenum); } + /** + * Fix a file name to be [A-Z0-9_]+ + * + * @param name the name to fix, or if empty, the input file name truncated to a maximum of 10 digits + * @return fixed name replacing not-allowed characters with '_' + */ + public String fixJobName(String name) { + if (name == null || (name = name.trim()).length() == 0) + name = jobStem; + for (int i = name.length(); --i >= 0;) { + char ch = name.charAt(i); + if (!Character.isLetterOrDigit(ch) && ch != '_') + name = name.substring(0, i) + "_" + name.substring(i + 1); + } + return name; + } + + public String[] update47File(String jobName, String keywords) { if (!useExt.equals("47")) return null; @@ -405,5 +423,4 @@ return true; } - } Modified: trunk/Jmol/src/org/gennbo/NBOModel.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBOModel.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBOModel.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -297,14 +297,25 @@ @Override protected boolean doFileBrowsePressed() { String folder = tfDir.getText().trim(); - folder = NBOUtil.getWindowsFullNameFor(folder, tfName.getText(), tfExt.getText()); + String name = tfName.getText(); + if (name.length() == 0) + name = "*"; + String ext = tfExt.getText(); + if (ext.length() == 0) + ext = "*"; + folder = NBOUtil.getWindowsFullNameFor(folder, name, ext); JFileChooser myChooser = new JFileChooser(); - if (useExt.contains(";")) - myChooser.setFileFilter(new FileNameExtensionFilter(useExt, useExt + String filter = useExt; + if (name.equals("*") && !ext.equals("*")) + filter = ext; + if (filter.contains(";")) + myChooser.setFileFilter(new FileNameExtensionFilter(filter, filter .split(";"))); else - myChooser.setFileFilter(new FileNameExtensionFilter(useExt, useExt)); + myChooser.setFileFilter(new FileNameExtensionFilter(filter, filter)); myChooser.setFileHidingEnabled(true); + if (folder.endsWith("/")) + folder = folder + "*.*"; if (!folder.equals("")) myChooser.setSelectedFile(new File(folder)); int button = myChooser.showDialog(this, GT._("Select")); Modified: trunk/Jmol/src/org/gennbo/NBORun.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBORun.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBORun.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -326,7 +326,8 @@ tfJobName.setText(jobName); } } - String name = tfJobName.getText(); + String name = tfJobName.getText().trim(); + name = dialog.inputFileHandler.fixJobName(name); dialog.inputFileHandler.update47File(name, keywords); addNBOKeylist(); tfJobName.setText(name); @@ -694,8 +695,7 @@ // from another module tfJobName.setText(dialog.inputFileHandler.jobStem); } - String jobName = (tfJobName == null ? dialog.inputFileHandler.jobStem - : tfJobName.getText().trim()); + String jobName = dialog.inputFileHandler.fixJobName(tfJobName == null ? null : tfJobName.getText().trim()); // BH Q: Would it be reasonable if the NO option is chosen to put that other job name in to the jobStem field, and also copy the .47 file to that? Or use that? // Or, would it be better to ask this question immediately upon file loading so that it doesn't come up, and make it so that Modified: trunk/Jmol/src/org/jmol/render/SticksRenderer.java =================================================================== --- trunk/Jmol/src/org/jmol/render/SticksRenderer.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/render/SticksRenderer.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -308,7 +308,7 @@ drawBond(mask); bondsPerp = !bondsPerp; bondOrder = 2; - drawBond(mask); + drawBond(mask >> 2); bondsPerp = !bondsPerp; multipleBondSpacing = m; } @@ -325,7 +325,7 @@ bondsPerp = !bondsPerp; bondOrder = 2; multipleBondSpacing *= 1.5f; - drawBond(mask); + drawBond(mask >> 3); bondsPerp = !bondsPerp; multipleBondSpacing = m; } @@ -342,7 +342,7 @@ bondsPerp = !bondsPerp; bondOrder = 2; multipleBondSpacing *= 1.5f; - drawBond(mask); + drawBond(mask >> 4); bondsPerp = !bondsPerp; multipleBondSpacing = m; } Modified: trunk/Jmol/src/org/jmol/script/ScriptParam.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptParam.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/script/ScriptParam.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -982,7 +982,7 @@ } /** - * reads standard n.m float-as-integer n*1000000 + m and returns (n % 6) << 5 + * reads standard n.m float-as-integer n*1000000 + m and returns (n % 7) << 5 * + (m % 0x1F) * * @param bondOrderInteger @@ -989,7 +989,7 @@ * @return Bond order partial mask */ public static int getPartialBondOrderFromFloatEncodedInt(int bondOrderInteger) { - return (((bondOrderInteger / 1000000) % 6) << 5) + return (((bondOrderInteger / 1000000) % 7) << 5) + ((bondOrderInteger % 1000000) & 0x1F); } Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-04-06 12:09:34 UTC (rev 21485) @@ -49,8 +49,12 @@ # 10. Run jmol/tools build-release.xml # -Jmol.___JmolVersion="14.11.3" // 2017-04-05 +Jmol.___JmolVersion="14.11.3" // 2017-04-06 +bug fix: partial bond order for orders > 3 not working + -- for example: connect {_C} {_C} partial 5.3 +bug fix: NBO MODEL loading with no file name goes to wrong directory +bug fix: NBO job names need to be cleaned and set if necessary bug fix: some sort of bad build for DSSR JmolVersion="14.11.2" // 2017-04-04 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-09-15 11:16:12
|
Revision: 9896 http://jmol.svn.sourceforge.net/jmol/?rev=9896&view=rev Author: hansonr Date: 2008-09-15 11:16:04 +0000 (Mon, 15 Sep 2008) Log Message: ----------- threading work Modified Paths: -------------- trunk/Jmol/src/org/jmol/api/JmolDialogInterface.java trunk/Jmol/src/org/jmol/applet/Jmol.java trunk/Jmol/src/org/jmol/applet/Jvm12.java trunk/Jmol/src/org/jmol/export/dialog/Dialog.java trunk/Jmol/src/org/jmol/export/dialog/FilePreview.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/api/JmolDialogInterface.java =================================================================== --- trunk/Jmol/src/org/jmol/api/JmolDialogInterface.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/api/JmolDialogInterface.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -2,9 +2,8 @@ public interface JmolDialogInterface { - public abstract void setupUI(boolean forceNewTranslation); - + /** * @return The file type which contains the user's choice */ @@ -18,10 +17,12 @@ public abstract int getQuality(String sType); public abstract String getOpenFileNameFromDialog(JmolAdapter modelAdapter, + String appletContext, JmolViewer viewer, String fileName, Object historyFile, - String windowName, boolean allowAppend); + String windowName, + boolean allowAppend); public abstract String getSaveFileNameFromDialog(JmolViewer viewer, String data, String type); Modified: trunk/Jmol/src/org/jmol/applet/Jmol.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/Jmol.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/applet/Jmol.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -268,7 +268,7 @@ menuStructure = viewer.getFileAsString(menuFile); jvm12orGreater = viewer.isJvm12orGreater(); if (jvm12orGreater) - jvm12 = new Jvm12(appletWrapper, viewer, modelAdapter); + jvm12 = new Jvm12(appletWrapper, viewer, modelAdapter, options); if (Logger.debugging) { Logger.debug("checking for jsoWindow mayScript=" + mayScript); } Modified: trunk/Jmol/src/org/jmol/applet/Jvm12.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/Jvm12.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/applet/Jvm12.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -37,11 +37,13 @@ JmolAdapter modelAdapter; private Component awtComponent; Console console; + protected String appletContext; - Jvm12(Component awtComponent, JmolViewer viewer, JmolAdapter modelAdapter) { + Jvm12(Component awtComponent, JmolViewer viewer, JmolAdapter modelAdapter, String appletContext) { this.awtComponent = awtComponent; this.viewer = viewer; this.modelAdapter = modelAdapter; + this.appletContext = appletContext; } private final Rectangle rectClip = new Rectangle(); @@ -120,7 +122,7 @@ public void run() { if (dialogType.equals("load")) { outputFileName = newDialog(false).getOpenFileNameFromDialog( - modelAdapter, viewer, inputFileName, null, null, false); + modelAdapter, appletContext, viewer, inputFileName, null, null, false); return; } JmolDialogInterface sd = newDialog(false); Modified: trunk/Jmol/src/org/jmol/export/dialog/Dialog.java =================================================================== --- trunk/Jmol/src/org/jmol/export/dialog/Dialog.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/export/dialog/Dialog.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -70,27 +70,29 @@ private FilePreview openPreview; public String getOpenFileNameFromDialog(JmolAdapter modelAdapter, + String appletContext, JmolViewer viewer, String fileName, Object historyFileObject, String windowName, boolean allowAppend) { - + HistoryFile historyFile = (HistoryFile) historyFileObject; if (openChooser == null) { openChooser = new FileChooser(); String previewProperty = System.getProperty("openFilePreview", "true"); if (Boolean.valueOf(previewProperty).booleanValue()) { - openPreview = new FilePreview(openChooser, modelAdapter, allowAppend); + openPreview = new FilePreview(openChooser, modelAdapter, allowAppend, + appletContext); } } - + if (historyFile != null) { openChooser.setDialogSize(historyFile.getWindowSize(windowName)); openChooser.setDialogLocation(historyFile.getWindowPosition(windowName)); } openChooser.resetChoosableFileFilters(); - + if (fileName != null) { int pt = fileName.lastIndexOf("."); String sType = fileName.substring(pt + 1); @@ -100,7 +102,7 @@ fileName = "Jmol" + fileName; if (fileName.length() > 0) openChooser.setSelectedFile(new File(fileName)); - if ( fileName.indexOf(":") < 0) + if (fileName.indexOf(":") < 0) openChooser.setCurrentDirectory(FileManager.getLocalDirectory(viewer)); } File file = null; @@ -108,7 +110,7 @@ file = openChooser.getSelectedFile(); if (file == null) return null; - + if (historyFile != null) historyFile.addWindowInfo(windowName, openChooser.getDialog(), null); @@ -123,20 +125,17 @@ openPreview = null; return (doAppend ? "load append " + Escape.escape(fileName) : fileName); } - - private final static String[] urlPrefixes = { - "http:", "http://", - "www.", "http://www.", - "https:", "https://", - "ftp:", "ftp://", - "file:", "file:///"}; + private final static String[] urlPrefixes = { "http:", "http://", "www.", + "http://www.", "https:", "https://", "ftp:", "ftp://", "file:", + "file:///" }; + private static String getLocalUrl(File file) { // entering a url on a file input box will be accepted, // but cause an error later. We can fix that... // return null if there is no problem, the real url if there is if (file.getName().startsWith("=")) - return file.getName(); + return file.getName(); String path = file.getAbsolutePath().replace('\\', '/'); for (int i = 0; i < urlPrefixes.length; i++) if (path.indexOf(urlPrefixes[i]) == 0) @@ -144,12 +143,10 @@ for (int i = 0; i < urlPrefixes.length; i += 2) if (path.indexOf(urlPrefixes[i]) > 0) return urlPrefixes[i + 1] - + TextFormat.trim(path.substring( - path.indexOf(urlPrefixes[i]) + urlPrefixes[i].length()) - , "/"); + + TextFormat.trim(path.substring(path.indexOf(urlPrefixes[i]) + + urlPrefixes[i].length()), "/"); return null; } - public String getSaveFileNameFromDialog(JmolViewer viewer, String fileName, String type) { @@ -170,15 +167,13 @@ if (type != null) saveChooser.addChoosableFileFilter(new TypeFilter(type)); saveChooser.setSelectedFile(file); - if ((file = showSaveDialog(this, this, saveChooser, - file)) == null) + if ((file = showSaveDialog(this, this, saveChooser, file)) == null) return null; viewer.setStringProperty("currentLocalPath", file.getParent()); return file.getAbsolutePath(); } - public String getImageFileNameFromDialog( - JmolViewer viewer, String fileName, + public String getImageFileNameFromDialog(JmolViewer viewer, String fileName, String type, String[] imageChoices, String[] imageExtensions, int qualityJPG, int qualityPNG) { @@ -215,8 +210,7 @@ file = new File(fileName); } exportChooser.setSelectedFile(initialFile = file); - if ((file = showSaveDialog(this, this, exportChooser, - file)) == null) + if ((file = showSaveDialog(this, this, exportChooser, file)) == null) return null; viewer.setStringProperty("currentLocalPath", file.getParent()); return file.getAbsolutePath(); @@ -417,17 +411,17 @@ } static boolean haveTranslations = false; - + public void setupUI(boolean forceNewTranslation) { if (forceNewTranslation || !haveTranslations) setupUIManager(); haveTranslations = true; } - + /** * Setup the UIManager (for i18n) */ - + public static void setupUIManager() { // FileChooser strings Modified: trunk/Jmol/src/org/jmol/export/dialog/FilePreview.java =================================================================== --- trunk/Jmol/src/org/jmol/export/dialog/FilePreview.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/export/dialog/FilePreview.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -56,8 +56,10 @@ * @param fileChooser File chooser * @param modelAdapter Model adapter * @param allowAppend + * @param appletContext */ - public FilePreview(JFileChooser fileChooser, JmolAdapter modelAdapter, boolean allowAppend) { + public FilePreview(JFileChooser fileChooser, JmolAdapter modelAdapter, + boolean allowAppend, String appletContext) { super(); chooser = fileChooser; @@ -66,20 +68,19 @@ // Add a checkbox to activate / deactivate preview active = new JCheckBox(GT._("Preview"), false); - active.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) { - if (active.isSelected()) { - updatePreview(chooser.getSelectedFile()); - } else { - updatePreview(null); - } + active.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + if (active.isSelected()) { + updatePreview(chooser.getSelectedFile()); + } else { + updatePreview(null); } - }); + } + }); box.add(active); // Add a preview area - display = new JmolPanel(modelAdapter); + display = new JmolPanel(modelAdapter, appletContext); display.setPreferredSize(new Dimension(80, 80)); display.setMinimumSize(new Dimension(50, 50)); box.add(display); @@ -117,7 +118,7 @@ } } } - + /** * Update preview * @@ -126,20 +127,20 @@ void updatePreview(File file) { if (file != null) { //doesn't update from use input? - display.getViewer().evalStringQuiet("load \"" + file.getAbsolutePath() + "\""); + display.getViewer().evalStringQuiet( + "load \"" + file.getAbsolutePath() + "\""); display.repaint(); } else { display.getViewer().evalStringQuiet("zap"); } } - private class JmolPanel extends JPanel { JmolViewer viewer; - - JmolPanel(JmolAdapter modelAdapter) { + + JmolPanel(JmolAdapter modelAdapter, String appletContext) { viewer = JmolViewer.allocateViewer(this, modelAdapter); - viewer.setAppletContext("", null, null, "#previewOnly"); + viewer.setAppletContext("", null, null, "#previewOnly " + appletContext); } public JmolViewer getViewer() { @@ -156,4 +157,3 @@ } } } - Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-15 11:16:04 UTC (rev 9896) @@ -1,7 +1,7 @@ # Developers: to add a description of changes you have made, # add it on a line starting with # below the "version=..." line -version=11.6.RC15_b +version=11.6.RC15_dev # new feature: load menu items for signed applet # new feature: save menu items for signed applet Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-15 10:59:26 UTC (rev 9895) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-15 11:16:04 UTC (rev 9896) @@ -144,6 +144,7 @@ static Boolean haveConsole = Boolean.TRUE; static Boolean haveDisplay = Boolean.TRUE; JmolAdapter modelAdapter; + String appletContext; Jmol(Splash splash, JFrame frame, Jmol parent, int startupWidth, int startupHeight, String commandOptions) { @@ -193,6 +194,7 @@ report("unrecognized model adapter:" + adapter + " -- using Smarter"); modelAdapter = new SmarterJmolAdapter(); } + appletContext = commandOptions; viewer = JmolViewer.allocateViewer(display, modelAdapter); viewer.setAppletContext("", null, null, commandOptions); @@ -1596,8 +1598,9 @@ } String getOpenFileNameFromDialog(String fileName) { - return (new Dialog()).getOpenFileNameFromDialog(modelAdapter, viewer, - fileName, historyFile, FILE_OPEN_WINDOW_NAME, (fileName == null)); + return (new Dialog()).getOpenFileNameFromDialog(modelAdapter, + appletContext, viewer, fileName, historyFile, FILE_OPEN_WINDOW_NAME, + (fileName == null)); } public static final String chemFileProperty = "chemFile"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-09-21 18:33:57
|
Revision: 9917 http://jmol.svn.sourceforge.net/jmol/?rev=9917&view=rev Author: hansonr Date: 2008-09-21 18:33:52 +0000 (Sun, 21 Sep 2008) Log Message: ----------- version=11.6.RC16_dev # bug fix: save image button/menu interface broken in 11.6.RC15 Modified Paths: -------------- trunk/Jmol/src/org/jmol/export/dialog/Dialog.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/export/dialog/Dialog.java =================================================================== --- trunk/Jmol/src/org/jmol/export/dialog/Dialog.java 2008-09-21 15:44:47 UTC (rev 9916) +++ trunk/Jmol/src/org/jmol/export/dialog/Dialog.java 2008-09-21 18:33:52 UTC (rev 9917) @@ -206,6 +206,8 @@ qualityPNG0 = 2; qualityJPG = qualityJPG0; qualityPNG = qualityPNG0; + if (extension == null) + extension = "jpg"; if (imageChooser == null) imageChooser = new JFileChooser(); @@ -253,7 +255,7 @@ String[] extensions, String type) { imageChooser.setAccessory(this); setLayout(new BorderLayout()); - if (type.equals("JPG")) + if (type == null || type.equals("JPG")) type = "JPEG"; for (defaultChoice = choices.length; --defaultChoice >= 1;) if (choices[defaultChoice].equals(type)) Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-21 15:44:47 UTC (rev 9916) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-21 18:33:52 UTC (rev 9917) @@ -3,6 +3,8 @@ version=11.6.RC16_dev +# bug fix: save image button/menu interface broken in 11.6.RC15 + # ----------------------------------------------------------------------------- #version=11.6.RC15 Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-21 15:44:47 UTC (rev 9916) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-21 18:33:52 UTC (rev 9917) @@ -1430,6 +1430,8 @@ Dialog sd = new Dialog(); String fileName = sd.getImageFileNameFromDialog(viewer, null, imageType, imageChoices, imageExtensions, qualityJPG, qualityPNG); + if (fileName == null) + return; qualityJPG = sd.getQuality("JPG"); qualityPNG = sd.getQuality("PNG"); String sType = imageType = sd.getType(); @@ -1441,13 +1443,12 @@ return; // make no assumptions - require a type by extension sType = sType.substring(i + 1).toUpperCase(); } - if (sType.equals("PDF")) - createPdfDocument(new File(fileName)); - else - createImageStatus(fileName, sType, null, sd.getQuality(sType)); + String msg = (sType.equals("PDF") ?createPdfDocument(new File(fileName)) + : createImageStatus(fileName, sType, null, sd.getQuality(sType))); + Logger.info(msg); } - private void createPdfDocument(File file) { + private String createPdfDocument(File file) { // PDF is application-only Document document = new Document(); try { @@ -1466,11 +1467,12 @@ g2.dispose(); cb.addTemplate(tp, 72, 720 - h); } catch (DocumentException de) { - System.err.println(de.getMessage()); + return de.getMessage(); } catch (IOException ioe) { - System.err.println(ioe.getMessage()); + return ioe.getMessage(); } document.close(); + return "OK PDF " + file.length() + " " + file.getAbsolutePath(); } } @@ -1536,8 +1538,8 @@ String fileName = (new Dialog()).getSaveFileNameFromDialog(viewer, null, "SPT"); if (fileName != null) - createImageStatus(fileName, "SPT", viewer.getStateInfo(), - Integer.MIN_VALUE); + Logger.info(createImageStatus(fileName, "SPT", viewer.getStateInfo(), + Integer.MIN_VALUE)); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-09-22 10:38:02
|
Revision: 9920 http://jmol.svn.sourceforge.net/jmol/?rev=9920&view=rev Author: hansonr Date: 2008-09-22 10:37:58 +0000 (Mon, 22 Sep 2008) Log Message: ----------- code Modified Paths: -------------- trunk/Jmol/src/org/jmol/api/JmolStatusListener.java trunk/Jmol/src/org/jmol/applet/Jmol.java trunk/Jmol/src/org/jmol/applet/Jvm12.java trunk/Jmol/src/org/jmol/viewer/StatusManager.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/api/JmolStatusListener.java =================================================================== --- trunk/Jmol/src/org/jmol/api/JmolStatusListener.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/jmol/api/JmolStatusListener.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -57,5 +57,5 @@ public void showUrl(String url); - public String dialogAsk(String type, String data); + public String dialogAsk(String type, String fileName); } Modified: trunk/Jmol/src/org/jmol/applet/Jmol.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/Jmol.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/jmol/applet/Jmol.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -1236,10 +1236,10 @@ return JmolAppletRegistry.htRegistry; } - public String dialogAsk(String type, String data) { + public String dialogAsk(String type, String fileName) { if (!isSigned || jvm12 == null) return null; - return jvm12.dialogAsk(type, data); + return jvm12.dialogAsk(type, fileName); } } Modified: trunk/Jmol/src/org/jmol/applet/Jvm12.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/Jvm12.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/jmol/applet/Jvm12.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -123,7 +123,7 @@ public String dialogAsk(String type, String fileName) { inputFileName = fileName; dialogType = type; - System.out.println("Jvm12 thread: " + Thread.currentThread().getName()); + //System.out.println("Jvm12 thread: " + Thread.currentThread().getName()); try { SwingUtilities.invokeAndWait(new Runnable() { public void run() { Modified: trunk/Jmol/src/org/jmol/viewer/StatusManager.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StatusManager.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/jmol/viewer/StatusManager.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -468,9 +468,9 @@ return (jmolStatusListener == null ? null : jmolStatusListener.getRegistryInfo()); } - public String dialogAsk(String type, String data) { + public String dialogAsk(String type, String fileName) { if (jmolStatusListener != null) - return jmolStatusListener.dialogAsk(type, data); + return jmolStatusListener.dialogAsk(type, fileName); return ""; } Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -3981,8 +3981,8 @@ strError, ptLoad); } - public String dialogAsk(String type, String data) { - return statusManager.dialogAsk(type, data); + public String dialogAsk(String type, String fileName) { + return statusManager.dialogAsk(type, fileName); } private void setStatusFileNotLoaded(String fullPathName, String errorMsg) { Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-22 10:29:19 UTC (rev 9919) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-09-22 10:37:58 UTC (rev 9920) @@ -1851,17 +1851,17 @@ return null; } - public String dialogAsk(String type, String data) { + public String dialogAsk(String type, String fileName) { if (type.equals("load")) - return getOpenFileNameFromDialog(data); + return getOpenFileNameFromDialog(fileName); if (type.equals("save")) { - return (new Dialog()).getSaveFileNameFromDialog(viewer, data, + return (new Dialog()).getSaveFileNameFromDialog(viewer, fileName, null); } if (type.equals("saveImage")) { Dialog sd = new Dialog(); - String fileName = sd.getImageFileNameFromDialog(viewer, - data, imageType, imageChoices, imageExtensions, qualityJPG, + fileName = sd.getImageFileNameFromDialog(viewer, + fileName, imageType, imageChoices, imageExtensions, qualityJPG, qualityPNG); imageType = sd.getType(); qualityJPG = sd.getQuality("JPG"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-09-27 16:18:09
|
Revision: 9946 http://jmol.svn.sourceforge.net/jmol/?rev=9946&view=rev Author: hansonr Date: 2008-09-27 16:18:07 +0000 (Sat, 27 Sep 2008) Log Message: ----------- version=11.6.RC17_dev # bug fix: drag/drop not enabled on consoles Modified Paths: -------------- trunk/Jmol/src/org/jmol/applet/Console.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java Modified: trunk/Jmol/src/org/jmol/applet/Console.java =================================================================== --- trunk/Jmol/src/org/jmol/applet/Console.java 2008-09-27 16:17:40 UTC (rev 9945) +++ trunk/Jmol/src/org/jmol/applet/Console.java 2008-09-27 16:18:07 UTC (rev 9946) @@ -191,6 +191,7 @@ private void setupInput() { input.setLineWrap(true); input.setWrapStyleWord(true); + input.setDragEnabled(true); //input.setText("Input a command in the box below or select a menu item from above."); Keymap map = input.getKeymap(); @@ -203,6 +204,7 @@ private void setupOutput() { output.setEditable(false); + output.setDragEnabled(true); // output.setLineWrap(true); // output.setWrapStyleWord(true); StyleConstants.setBold(attributesCommand, true); Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-27 16:17:40 UTC (rev 9945) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-09-27 16:18:07 UTC (rev 9946) @@ -3,6 +3,7 @@ version=11.6.RC17_dev +# bug fix: drag/drop not enabled on consoles # bug fix: Jmol state command "calculate surfaceDistance WITHIN ({...})" not passing compiler # bug fix: Swing antialiasDisplay broken due to setTransparentBackground debugging # bug fix: trajectories not enabled Modified: trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java 2008-09-27 16:17:40 UTC (rev 9945) +++ trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java 2008-09-27 16:18:07 UTC (rev 9946) @@ -78,6 +78,7 @@ void layoutWindow(Container container) { console = new ConsoleTextPane(this); console.setPrompt(); + console.setDragEnabled(true); JScrollPane consolePane = new JScrollPane(console); JPanel buttonPanel = new JPanel(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-10-03 04:31:57
|
Revision: 9975 http://jmol.svn.sourceforge.net/jmol/?rev=9975&view=rev Author: hansonr Date: 2008-10-03 04:31:43 +0000 (Fri, 03 Oct 2008) Log Message: ----------- version=11.6.RC19_dev # bug fix: display of aromaticSingle bond for NEW bond results in dotted bond. Modified Paths: -------------- trunk/Jmol/src/org/jmol/shape/SticksRenderer.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java Modified: trunk/Jmol/src/org/jmol/shape/SticksRenderer.java =================================================================== --- trunk/Jmol/src/org/jmol/shape/SticksRenderer.java 2008-10-02 20:29:48 UTC (rev 9974) +++ trunk/Jmol/src/org/jmol/shape/SticksRenderer.java 2008-10-03 04:31:43 UTC (rev 9975) @@ -75,7 +75,6 @@ protected void renderBond() { mad = bond.getMad(); - int order = bond.getOrder(); atomA = bond.getAtom1(); atomB = bond.getAtom2(); if (!atomA.isModelVisible() || !atomB.isModelVisible() @@ -97,6 +96,7 @@ colixA = Graphics3D.getColixInherited(colix, colixA); colixB = Graphics3D.getColixInherited(colix, colixB); } + int order = bond.getOrder() & ~JmolConstants.BOND_NEW; if (bondsBackbone) { if (ssbondsBackbone && (order & JmolConstants.BOND_SULFUR_MASK) != 0) { // for ssbonds, always render the sidechain, Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-02 20:29:48 UTC (rev 9974) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-03 04:31:43 UTC (rev 9975) @@ -3,6 +3,7 @@ version=11.6.RC19_dev +# bug fix: display of aromaticSingle bond for NEW bond results in dotted bond. # translation: English language variants no longer ignored # ----------------------------------------------------------------------------- Modified: trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java 2008-10-02 20:29:48 UTC (rev 9974) +++ trunk/Jmol/src/org/openscience/jmol/app/ScriptWindow.java 2008-10-03 04:31:43 UTC (rev 9975) @@ -50,6 +50,7 @@ import org.jmol.i18n.GT; import org.jmol.util.Logger; import org.jmol.util.CommandHistory; +import org.jmol.util.TextFormat; //import org.jmol.viewer.Token; public final class ScriptWindow extends JDialog @@ -523,11 +524,12 @@ * * @param up - history up or down */ - void recallCommand(boolean up) { - String cmd = viewer.getSetHistory(up ? -1 : 1); + void recallCommand(boolean up) { + String cmd = viewer.getSetHistory(up ? -1 : 1); if (cmd == null) { return; } + cmd = TextFormat.trim(cmd, ";"); try { if (cmd.endsWith(CommandHistory.ERROR_FLAG)) { cmd = cmd.substring(0, cmd.indexOf(CommandHistory.ERROR_FLAG)); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ni...@us...> - 2008-10-05 15:24:34
|
Revision: 9980 http://jmol.svn.sourceforge.net/jmol/?rev=9980&view=rev Author: nicove Date: 2008-10-05 14:20:38 +0000 (Sun, 05 Oct 2008) Log Message: ----------- [ jmol-Patches-2144388 ] Sulfur/Sulphur consistency Modified Paths: -------------- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/Properties/Jmol-resources.properties trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-09-23 00:58+0000\n" "Last-Translator: Toni Hermoso Pulido <to...@so...>\n" "Language-Team: Catalan <jmo...@li...>\n" @@ -307,7 +307,8 @@ msgstr "Fòsfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Sofre" #: org/openscience/jmol/app/GuiMap.java:87 @@ -782,7 +783,7 @@ msgstr "Consola Java del Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Neteja" @@ -802,7 +803,7 @@ msgid "Enter URL of molecular model" msgstr "Introduïu l'URL d'un model molecular" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "S'ha produït una excepció IO:" @@ -1050,39 +1051,39 @@ msgid "Open" msgstr "Obre" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Consola script del Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Executa" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Para" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historial" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Estat" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Ajuda" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Tanca" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Desfés" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Refés" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:45+0000\n" "Last-Translator: martin.slavik <Unknown>\n" "Language-Team: Czech <Jmo...@li...>\n" @@ -325,7 +325,8 @@ msgstr "Fosfor (P)" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Síra (S)" #: org/openscience/jmol/app/GuiMap.java:87 @@ -836,7 +837,7 @@ msgstr "Jmol Java konzole" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Vyčistit" @@ -856,7 +857,7 @@ msgid "Enter URL of molecular model" msgstr "Zadat URL molekulárního modelu" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO výjimka:" @@ -1115,39 +1116,39 @@ msgid "Open" msgstr "Otevřít" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol skriptovací konzole" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Spustit" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Zastavit" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historie" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Stav" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Nápověda" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Zavřít" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:45+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: Danish <da...@li...>\n" @@ -317,7 +317,7 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +msgid "Sulfur" msgstr "" #: org/openscience/jmol/app/GuiMap.java:87 @@ -819,7 +819,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Ryd" @@ -839,7 +839,7 @@ msgid "Enter URL of molecular model" msgstr "" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "" @@ -1089,39 +1089,39 @@ msgid "Open" msgstr "Åbn" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Kør" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Stop" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historik" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Hjælp" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Luk" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Fortryd" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Omgør" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: Jmol 10\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-09-25 21:49+0000\n" "Last-Translator: Oliver Stueker <Unknown>\n" "Language-Team: German\n" @@ -308,7 +308,8 @@ msgstr "Phosphor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Schwefel" #: org/openscience/jmol/app/GuiMap.java:87 @@ -780,7 +781,7 @@ msgstr "Jmol Java Konsole" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Leeren" @@ -800,7 +801,7 @@ msgid "Enter URL of molecular model" msgstr "URL eines Molekül-Modells eingeben" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO-Fehler:" @@ -1048,39 +1049,39 @@ msgid "Open" msgstr "Öffnen" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol Skript Konsole" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Ausführen" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Stoppen" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historie" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Zustand" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Hilfe" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Schließen" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Rückgängig" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Wiederholen" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-09-30 16:01+0000\n" "Last-Translator: Andrew Schofield <and...@fa...>\n" "Language-Team: English (United Kingdom) <en...@li...>\n" @@ -305,7 +305,7 @@ msgstr "Phosphorus" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +msgid "Sulfur" msgstr "" #: org/openscience/jmol/app/GuiMap.java:87 @@ -775,7 +775,7 @@ msgstr "Jmol Java Console" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Clear" @@ -795,7 +795,7 @@ msgid "Enter URL of molecular model" msgstr "Enter URL of molecular model" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO Exception:" @@ -1044,39 +1044,39 @@ msgid "Open" msgstr "Open" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol Script Console" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Run" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Halt" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "History" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "State" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Help" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Close" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Undo" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Redo" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Jmol 10\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-31 21:29+0100\n" "Last-Translator: Angel Herráez <ahe...@us...>\n" "Language-Team: Spanish <Jmo...@li...>\n" @@ -309,7 +309,8 @@ msgstr "Fósforo" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Azufre" #: org/openscience/jmol/app/GuiMap.java:87 @@ -781,7 +782,7 @@ msgstr "Consola Java de Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Limpiar" @@ -801,7 +802,7 @@ msgid "Enter URL of molecular model" msgstr "Escribe la URL del modelo molecular" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "Error de entrada/salida:" @@ -1050,39 +1051,39 @@ msgid "Open" msgstr "Abrir" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Consola de guiones de Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Ejecutar" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Detener" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historial" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Estado" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Ayuda" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Cerrar" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Deshacer" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Rehacer" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Ivo Sarak <Unknown>\n" "Language-Team: Estonian <Jmo...@li...>\n" @@ -320,7 +320,8 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Väävel" #: org/openscience/jmol/app/GuiMap.java:87 @@ -832,7 +833,7 @@ msgstr "Jmol Java konsool" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Puhasta" @@ -852,7 +853,7 @@ msgid "Enter URL of molecular model" msgstr "Sisesta molekulaarmudeli URL" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO eriolukord:" @@ -1107,39 +1108,39 @@ msgid "Open" msgstr "Ava" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol skripti konsool" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Käivita" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Seiska" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Ajalugu" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Olek" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Abi" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Sulge" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Tühista" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Tee uuesti" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-10-01 21:53+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: French <Jmo...@li...>\n" @@ -308,7 +308,8 @@ msgstr "Phosphore" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Soufre" #: org/openscience/jmol/app/GuiMap.java:87 @@ -780,7 +781,7 @@ msgstr "Console Java Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Effacer" @@ -800,7 +801,7 @@ msgid "Enter URL of molecular model" msgstr "Saisissez l'URL d'un modèle moléculaire" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "Exception E/S!" @@ -1049,39 +1050,39 @@ msgid "Open" msgstr "Ouvrir" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Console Script Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Exécuter" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Arrêter" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historique" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Etat" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "?" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Fermer" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Annuler" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Répéter" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Zörgő Zoltán <Unknown>\n" "Language-Team: Hungarian <Jmo...@li...>\n" @@ -324,7 +324,8 @@ msgstr "Foszfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Kén" #: org/openscience/jmol/app/GuiMap.java:87 @@ -840,7 +841,7 @@ msgstr "Jmol Java konzol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "őrít" @@ -860,7 +861,7 @@ msgid "Enter URL of molecular model" msgstr "Adja meg a molekuláris modell webcímét" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO-hiba:" @@ -1114,42 +1115,42 @@ msgid "Open" msgstr "Megnyitás" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 #, fuzzy msgid "Jmol Script Console" msgstr "Jmol parancsnyelvi konzol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Futtat" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Leállít" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 #, fuzzy msgid "History" msgstr "Előzmények" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 #, fuzzy msgid "State" msgstr "Státus" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "SAogó" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Bezár" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Visszavonás" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "őjra" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-10-01 21:52+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: Italian <it...@li...>\n" @@ -305,7 +305,8 @@ msgstr "Fosforo" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Zolfo" #: org/openscience/jmol/app/GuiMap.java:87 @@ -775,7 +776,7 @@ msgstr "Jmol Java Console" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Pulisci" @@ -795,7 +796,7 @@ msgid "Enter URL of molecular model" msgstr "Inserisci URL di un modello molecolare" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO Exception:" @@ -1044,39 +1045,39 @@ msgid "Open" msgstr "Apri" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol Script Console" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Esegui" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Arresta" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Cronologia" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Stato" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Aiuto" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Chiudi" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Annulla" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Ripeti" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-10-01 21:54+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: Korean <LL...@li...>\n" @@ -304,7 +304,8 @@ msgstr "인" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "황" #: org/openscience/jmol/app/GuiMap.java:87 @@ -774,7 +775,7 @@ msgstr "Jmol 자바 콘솔" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "지움" @@ -794,7 +795,7 @@ msgid "Enter URL of molecular model" msgstr "분자 모델의 URL을 넣으세요" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO 예외" @@ -1042,39 +1043,39 @@ msgid "Open" msgstr "열기" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol 스크립트 콘솔" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "실행" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "끝내기" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "히스토리" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "상태" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "도움말" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "닫기" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "무르기" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "되무르기" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-09-29 10:41+0000\n" "Last-Translator: Egon Willighagen <Unknown>\n" "Language-Team: Dutch <jmo...@li...>\n" @@ -307,7 +307,8 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Zwavel" #: org/openscience/jmol/app/GuiMap.java:87 @@ -777,7 +778,7 @@ msgstr "Jmol Java Console" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Wissen" @@ -797,7 +798,7 @@ msgid "Enter URL of molecular model" msgstr "Geef URL van molecuulmodel" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "IO-fout:" @@ -1046,39 +1047,39 @@ msgid "Open" msgstr "Open" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol Script Console" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Starten" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Stoppen" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Geschiedenis" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Toestand" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Help" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Sluiten" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Ongedaan maken" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Opnieuw uitvoeren" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Bartosz Kaszubowski <go...@gm...>\n" "Language-Team: Polish <pl...@li...>\n" @@ -316,7 +316,8 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Siarka" #: org/openscience/jmol/app/GuiMap.java:87 @@ -828,7 +829,7 @@ msgstr "Konsola java w Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Wyczyść" @@ -848,7 +849,7 @@ msgid "Enter URL of molecular model" msgstr "Wpisz adres URL do modelu molekularnego" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "" @@ -1100,39 +1101,39 @@ msgid "Open" msgstr "Otwórz" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Konsola skryptów Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Uruchom" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Wstrzymaj" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Historia" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Stan" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Pomoc" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Zamknij" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Cofnij" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Przywróć" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2005-12-20 07:33-0000\n" "Last-Translator: Metro <por...@gm...>\n" "Language-Team: Portugal@Folding <Jmo...@li...>\n" @@ -320,7 +320,8 @@ msgstr "Fósforo" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Enxofre" #: org/openscience/jmol/app/GuiMap.java:87 @@ -833,7 +834,7 @@ msgstr "Consola Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Limpar" @@ -853,7 +854,7 @@ msgid "Enter URL of molecular model" msgstr "Escrever URL de um modelo molecular" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "Excepção IO:" @@ -1112,41 +1113,41 @@ msgid "Open" msgstr "Abrir" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 #, fuzzy msgid "Jmol Script Console" msgstr "Consola Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Executar" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Parar" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 #, fuzzy msgid "State" msgstr "Gravar" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Ajuda" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Fechar" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-09-22 21:41-0300\n" "Last-Translator: Sérgio Ceroni da Silva <ce...@cb...>\n" "Language-Team: Brazilian Portuguese <Jmo...@li...>\n" @@ -307,7 +307,8 @@ msgstr "Fósforo" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Enxofre" #: org/openscience/jmol/app/GuiMap.java:87 @@ -748,8 +749,12 @@ msgstr "largura x altura da janela, por exemplo {0}" #: org/openscience/jmol/app/Jmol.java:443 -msgid "JPG image quality (1-100; default 75) or PNG image compression (0-9; default 2, maximum compression 9)" -msgstr "qualidade da imagem JPG (1-100; padrão=75) ou compressão da imagem PNG (0-9; padrão=2, compressão máxima=9)" +msgid "" +"JPG image quality (1-100; default 75) or PNG image compression (0-9; default " +"2, maximum compression 9)" +msgstr "" +"qualidade da imagem JPG (1-100; padrão=75) ou compressão da imagem PNG (0-9; " +"padrão=2, compressão máxima=9)" #: org/openscience/jmol/app/Jmol.java:449 #, java-format @@ -773,7 +778,7 @@ msgstr "Console Java do Jmol" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Apagar" @@ -793,7 +798,7 @@ msgid "Enter URL of molecular model" msgstr "Fornecer a URL de um modelo molecular" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "Entrada/saída anormal:" @@ -822,7 +827,8 @@ msgstr "Nome do arquivo:" #: org/openscience/jmol/app/PovrayDialog.java:157 -msgid "'caffeine.pov' -> 'caffeine.pov', 'caffeine.pov.ini', 'caffeine.pov.spt'" +msgid "" +"'caffeine.pov' -> 'caffeine.pov', 'caffeine.pov.ini', 'caffeine.pov.spt'" msgstr "'cafeína.pov' -> 'cafeína.pov', 'cafeína.pov.ini', 'cafeína.pov.spt'" #: org/openscience/jmol/app/PovrayDialog.java:167 @@ -1026,7 +1032,8 @@ #: org/openscience/jmol/app/PreferencesDialog.java:417 msgid "Bond Tolerance - sum of two covalent radii + this value" -msgstr "Tolerância de Ligação - somatório de dois raios covalentes + este valor" +msgstr "" +"Tolerância de Ligação - somatório de dois raios covalentes + este valor" #: org/openscience/jmol/app/PreferencesDialog.java:468 msgid "Minimum Bonding Distance" @@ -1040,39 +1047,39 @@ msgid "Open" msgstr "Abrir" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Console de script do Jmol" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Executar" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Parar" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Histórico" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Estado" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Ajuda" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Fechar" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Desfazer" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Refazer" @@ -1150,13 +1157,22 @@ #: org/openscience/jmol/app/webexport/WebExport.java:162 #, java-format -msgid "Page skeleton and JavaScript generated by export to web function using {0} on {1}." -msgstr "Arcabouço de página e JavaScript gerado pela função de exportação para WWW usando {0} em {1}." +msgid "" +"Page skeleton and JavaScript generated by export to web function using {0} " +"on {1}." +msgstr "" +"Arcabouço de página e JavaScript gerado pela função de exportação para WWW " +"usando {0} em {1}." #: org/openscience/jmol/app/webexport/WebExport.java:306 #, java-format -msgid "To get a 3-D model you can manipulate, click {0}here{1}. Download time may be significant the first time the applet is loaded." -msgstr "Para obter um modelo 3-D manipulável, clique {0}aqui{1}. O tempo para transferência pode ser significativamente longo na primeira vez que o \"applet\" é carregado." +msgid "" +"To get a 3-D model you can manipulate, click {0}here{1}. Download time may " +"be significant the first time the applet is loaded." +msgstr "" +"Para obter um modelo 3-D manipulável, clique {0}aqui{1}. O tempo para " +"transferência pode ser significativamente longo na primeira vez que o " +"\"applet\" é carregado." #: org/openscience/jmol/app/webexport/WebExport.java:308 msgid "Insert the page TITLE here." @@ -1173,8 +1189,12 @@ #: org/openscience/jmol/app/webexport/WebExport.java:312 #, java-format -msgid "Insert additonal explanatory text here. Long text will wrap around Jmol model {0}." -msgstr "Insira texto explanatório adicional aqui. Textos longos fluirão ao redor do modelo Jmol {0}." +msgid "" +"Insert additonal explanatory text here. Long text will wrap around Jmol " +"model {0}." +msgstr "" +"Insira texto explanatório adicional aqui. Textos longos fluirão ao redor do " +"modelo Jmol {0}." #: org/openscience/jmol/app/webexport/WebExport.java:314 msgid "Insert your TITLE and INTRODUCTION here." @@ -1182,8 +1202,12 @@ #: org/openscience/jmol/app/webexport/WebExport.java:316 #, java-format -msgid "The button {0} will appear in the box below. Insert information for {0} here and below." -msgstr "O botão {0} aparecerá na caixa abaixo. Insira a informação para {0} aqui e abaixo." +msgid "" +"The button {0} will appear in the box below. Insert information for {0} " +"here and below." +msgstr "" +"O botão {0} aparecerá na caixa abaixo. Insira a informação para {0} aqui e " +"abaixo." #: org/openscience/jmol/app/webexport/WebExport.java:317 #, java-format @@ -1263,7 +1287,8 @@ #: org/openscience/jmol/app/webexport/WebPanel.java:370 msgid "Select a directory to create or an HTML file to save" -msgstr "Selecione um diretório a ser criado ou um arquivo HTML para ser gravado" +msgstr "" +"Selecione um diretório a ser criado ou um arquivo HTML para ser gravado" #: org/openscience/jmol/app/webexport/WebPanel.java:388 msgid "Call to FileWriter unsuccessful." @@ -1290,7 +1315,8 @@ #: org/openscience/jmol/app/webexport/WebPanel.java:492 msgid "Based on template by A. Herráez as modified by J. Gutow" -msgstr "Baseado em um modelo feito por A. Herráez e modificado por J. Gutow" +msgstr "" +"Baseado em um modelo feito por A. Herráez e modificado por J. Gutow" #: org/openscience/jmol/app/webexport/WebPanel.java:495 #, java-format @@ -1323,139 +1349,204 @@ #~ msgid "Preview" #~ msgstr "Pré-visualizar" + #~ msgid "Append models" #~ msgstr "Anexar modelos" + #~ msgid "All Files" #~ msgstr "Todos os arquivos" + #~ msgid "Abort file chooser dialog" #~ msgstr "Abortar o diálogo do selecionador de arquivos" + #~ msgid "Details" #~ msgstr "Detalhes" + #~ msgid "Directory" #~ msgstr "Diretório" + #~ msgid "Open selected directory" #~ msgstr "Abrir o diretório selecionado" + #~ msgid "Attributes" #~ msgstr "Atributos" + #~ msgid "Modified" #~ msgstr "Modificado" + #~ msgid "Generic File" #~ msgstr "Arquivo genérico" + #~ msgid "Name" #~ msgstr "Nome" + #~ msgid "Size" #~ msgstr "Tamanho" + #~ msgid "Files of Type:" #~ msgstr "Arquivos do tipo:" + #~ msgid "Type" #~ msgstr "Tipo" + #~ msgid "FileChooser help" #~ msgstr "Ajuda do selec. de arquivos" + #~ msgid "Home" #~ msgstr "Início" + #~ msgid "List" #~ msgstr "Lista" + #~ msgid "Look In:" #~ msgstr "Procurar em:" + #~ msgid "Error creating new folder" #~ msgstr "Erro ao criar nova pasta" + #~ msgid "New Folder" #~ msgstr "Nova pasta" + #~ msgid "Create New Folder" #~ msgstr "Criar nova pasta" + #~ msgid "Open selected file" #~ msgstr "Abrir arquivo selecionado" + #~ msgid "Save selected file" #~ msgstr "Salvar arquivo selecionado" + #~ msgid "Save In:" #~ msgstr "Salvar em:" + #~ msgid "Update" #~ msgstr "Atualizar" + #~ msgid "Update directory listing" #~ msgstr "Atualizar a listagem do diretório" + #~ msgid "Up" #~ msgstr "Para cima" + #~ msgid "Up One Level" #~ msgstr "Para cima um nível" + #~ msgid "No" #~ msgstr "Não" + #~ msgid "Yes" #~ msgstr "Sim" + #~ msgid "Initializing AtomSetChooser Window..." #~ msgstr "Preparando a Janela do Selec. de Conj. de Átomos..." + #~ msgid "Setting up File Choosers..." #~ msgstr "Ativando o \"File Choosers\"..." + #~ msgid "Image Type" #~ msgstr "Tipo de Imagem" + #~ msgid "JPEG Quality" #~ msgstr "Qualidade do JPEG" + #~ msgid "Render in pov-ray." #~ msgstr "Renderizar no POV-Ray" + #~ msgid "&Measurements..." #~ msgstr "&Medidas..." + #~ msgid "Measurements..." #~ msgstr "Medidas..." + #~ msgid "Jmol-to-POV-Ray Conversion" #~ msgstr "Conversão do Jmol para POV-Ray" + #~ msgid "Filename" #~ msgstr "Nome do arquivo" + #~ msgid "Height : " #~ msgstr "Altura : " + #~ msgid "POV-Ray Executable Location" #~ msgstr "Localização do executável POV-Ray" + #~ msgid "Failed to delete scratch file {0}." #~ msgstr "Falha ao deletar arquivo temporário {0}." + #~ msgid "Couldn't find file: WebExportIntro.html" #~ msgstr "Arquivo não pôde ser encontrado: WebExportIntro.html" + #~ msgid "Cartoon of Page:" #~ msgstr "\"Cartoon\" da página:" + #~ msgid "" #~ "\n" #~ " to" #~ msgstr "" #~ "\n" #~ " para" + #~ msgid "Select Atoms" #~ msgstr "Selecionar átomos" + #~ msgid "Make crystal..." #~ msgstr "Construir cristal..." + #~ msgid "Export view to an image or script file." #~ msgstr "Exportar visualização para um arquivo de imagem ou de script" + #~ msgid "Select an atom or region." #~ msgstr "Selecionar um átomo ou região" + #~ msgid "View measurement table." #~ msgstr "Ver a tabela de medições" + #~ msgid "Export &PDF..." #~ msgstr "Exportar &PDF..." + #~ msgid "Image size" #~ msgstr "Tamanho da imagem" + #~ msgid "Output format : " #~ msgstr "Formato de saida : " + #~ msgid "Select the file format of the output file" #~ msgstr "Selecionar o formato do arquivo de saída" + #~ msgid "Command Line to Execute" #~ msgstr "Linha de comando a ser executada" + #~ msgid "The actual command which will be executed" #~ msgstr "O comando a ser executado" + #~ msgid "null component string" #~ msgstr "\"null component string\"" + #~ msgid "Filename Stem" #~ msgstr "Nome-base para o arquivo" + #~ msgid "Use .ini file" #~ msgstr "Usar arquivo .ini" + #~ msgid "Save options in a .ini file" #~ msgstr "Gravar as opções em um arquivo .ini" + #~ msgid "Render all frames" #~ msgstr "Renderizar todos os quadros" + #~ msgid "Render each model (not only the currently displayed one)" #~ msgstr "Renderizar cada modelo (não somente o que está sendo visualizado)" + #~ msgid "Turn on POV-Ray anti-aliasing" #~ msgstr "Ligar filtro anti-serrilhado do POV-Ray" + #~ msgid "Use povray's slower but higher quality anti-aliasing mode" #~ msgstr "" #~ "Usar o modo anti-serrilhado (mais lento, melhor qualidade) do POV-Ray" + #~ msgid "Render in pov-ray..." #~ msgstr "Renderizar no POV-Ray..." + #~ msgid "File not loaded" #~ msgstr "Ficheiro não carregado" @@ -1466,74 +1557,108 @@ #, fuzzy #~ msgid "Jmol executing script ..." #~ msgstr "Executando um script..." + #~ msgid "Wi&reframe Rotation" #~ msgstr "Rotação de FrameLi&gado" + #~ msgid "Wireframe Rotation" #~ msgstr "Rotação de frame" + #~ msgid "Colors" #~ msgstr "Cores" + #~ msgid "Background" #~ msgstr "Fundo" + #~ msgid "Set the Background Color" #~ msgstr "Definir cor de fundo" + #~ msgid "Background Color" #~ msgstr "Cores do fundo" + #~ msgid "Picked Atoms" #~ msgstr "Átomos escolhidos" + #~ msgid "Set the Color for Picked Atoms" #~ msgstr "Definir cor de átomos escolhidos" + #~ msgid "Picked Atom Color" #~ msgstr "Cor do átomo escolhido" + #~ msgid "Text" #~ msgstr "Texto" + #~ msgid "Set the Color for Text" #~ msgstr "Definir cor do texto" + #~ msgid "Text Color" #~ msgstr "Cor do texto" + #~ msgid "Set the Color for Bonds" #~ msgstr "Definir cor para as ligações" + #~ msgid "Bond Color" #~ msgstr "Cor da ligação" + #~ msgid "Set the Vector Color" #~ msgstr "Definir cor do Vector" + #~ msgid "Vector Color" #~ msgstr "Cor do vector" + #~ msgid "Color for distance, angle, & torsion measurements" #~ msgstr "Cor para a distância, ângulo, e medições de torção" + #~ msgid "Measurements Color" #~ msgstr "Cor das meidções" + #~ msgid "Loading plugins..." #~ msgstr "Carregamento de plugins..." + #~ msgid "15% vanderWaals" #~ msgstr "15% vanderWaals" + #~ msgid "25% vanderWaals" #~ msgstr "20% vanderWaals" + #~ msgid "100% vanderWaals" #~ msgstr "20% vanderWaals" + #~ msgid "0.10 Å" #~ msgstr "0.10 Å" + #~ msgid "0.15 Å" #~ msgstr "0.15 Å" + #~ msgid "0.20 Å" #~ msgstr "0.15 Å" + #~ msgid "0.05 Å" #~ msgstr "0.05 Å" + #~ msgid "Scale 0.5" #~ msgstr "Escala 0.5" + #~ msgid "Scale 1" #~ msgstr "Escala 1" + #~ msgid "Scale 2" #~ msgstr "Escala 2" + #~ msgid "Scale 5" #~ msgstr "Escala 5" + #~ msgid "100%" #~ msgstr "100%" + #~ msgid "150%" #~ msgstr "150%" + #~ msgid "200%" #~ msgstr "200%" + #~ msgid "400%" #~ msgstr "400%" + #~ msgid "800%" #~ msgstr "800%" - Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: Russian <ru...@li...>\n" @@ -307,7 +307,7 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +msgid "Sulfur" msgstr "" #: org/openscience/jmol/app/GuiMap.java:87 @@ -775,7 +775,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "" @@ -795,7 +795,7 @@ msgid "Enter URL of molecular model" msgstr "" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "" @@ -1043,39 +1043,39 @@ msgid "Open" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Nicolas Vervelle <Unknown>\n" "Language-Team: Swedish <sv...@li...>\n" @@ -313,7 +313,7 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +msgid "Sulfur" msgstr "" #: org/openscience/jmol/app/GuiMap.java:87 @@ -787,7 +787,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "" @@ -807,7 +807,7 @@ msgid "Enter URL of molecular model" msgstr "" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "" @@ -1055,39 +1055,39 @@ msgid "Open" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Stäng" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-05 14:20:38 UTC (rev 9980) @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Jmol\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: 2008-08-04 20:46+0000\n" "Last-Translator: Muhammet Kara <Unknown>\n" "Language-Team: Turkish <yer...@kd...>\n" @@ -321,7 +321,8 @@ msgstr "Fosfor" #: org/openscience/jmol/app/GuiMap.java:86 -msgid "Sulphur" +#, fuzzy +msgid "Sulfur" msgstr "Sülfür" #: org/openscience/jmol/app/GuiMap.java:87 @@ -833,7 +834,7 @@ msgstr "Jmol Java Uçbirimi" #: org/openscience/jmol/app/Jmol.java:670 -#: org/openscience/jmol/app/ScriptWindow.java:94 +#: org/openscience/jmol/app/ScriptWindow.java:96 msgid "Clear" msgstr "Temizle" @@ -853,7 +854,7 @@ msgid "Enter URL of molecular model" msgstr "Moleküler modelin adresini gir" -#: org/openscience/jmol/app/Jmol.java:1552 +#: org/openscience/jmol/app/Jmol.java:1554 msgid "IO Exception:" msgstr "G/Ç Hatası:" @@ -1112,39 +1113,39 @@ msgid "Open" msgstr "Aç" -#: org/openscience/jmol/app/ScriptWindow.java:71 +#: org/openscience/jmol/app/ScriptWindow.java:72 msgid "Jmol Script Console" msgstr "Jmol Betik Uçbirimi" -#: org/openscience/jmol/app/ScriptWindow.java:85 +#: org/openscience/jmol/app/ScriptWindow.java:87 msgid "Run" msgstr "Çalıştır" -#: org/openscience/jmol/app/ScriptWindow.java:89 +#: org/openscience/jmol/app/ScriptWindow.java:91 msgid "Halt" msgstr "Duraksat" -#: org/openscience/jmol/app/ScriptWindow.java:98 +#: org/openscience/jmol/app/ScriptWindow.java:100 msgid "History" msgstr "Geçmiş" -#: org/openscience/jmol/app/ScriptWindow.java:102 +#: org/openscience/jmol/app/ScriptWindow.java:104 msgid "State" msgstr "Durum" -#: org/openscience/jmol/app/ScriptWindow.java:106 +#: org/openscience/jmol/app/ScriptWindow.java:108 msgid "Help" msgstr "Yardım" -#: org/openscience/jmol/app/ScriptWindow.java:110 +#: org/openscience/jmol/app/ScriptWindow.java:112 msgid "Close" msgstr "Kapat" -#: org/openscience/jmol/app/ScriptWindow.java:114 +#: org/openscience/jmol/app/ScriptWindow.java:116 msgid "Undo" msgstr "Geri Al" -#: org/openscience/jmol/app/ScriptWindow.java:119 +#: org/openscience/jmol/app/ScriptWindow.java:121 msgid "Redo" msgstr "Yinele" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-04 11:46:15 UTC (rev 9979) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-05 14:20:38 UTC (rev 9980) @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: jmo...@li...\n" -"POT-Creation-Date: 2008-09-20 11:08+0200\n" +"POT-Creation-Date: 2008-10-05 16:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL...@li...>\n" @@ -304,7 +304,7 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:86 -ms... [truncated message content] |
From: <ha...@us...> - 2008-10-06 11:54:41
|
Revision: 9985 http://jmol.svn.sourceforge.net/jmol/?rev=9985&view=rev Author: hansonr Date: 2008-10-06 11:54:23 +0000 (Mon, 06 Oct 2008) Log Message: ----------- typo Modified Paths: -------------- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -769,7 +769,7 @@ msgstr "Per exemple:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" "Les opcions són -D són com es descriu a continuació (paràmetres per defecte " "en parèntesis):" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -825,7 +825,7 @@ msgstr "Například:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "-D volby jsou následující (standardní v závorkách):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -807,7 +807,7 @@ msgstr "For eksempel:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -769,7 +769,7 @@ msgstr "Zum Beispiel:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "Folgende -D-Optionen werden unterstützt (Standardwerte in Klammern):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -763,7 +763,7 @@ msgstr "For example:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "The -D options are as follows (defaults in parenthesis):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -770,7 +770,7 @@ msgstr "Por ejemplo:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "Las opciones -D son (valores predeterminados entre paréntesis):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -821,7 +821,7 @@ msgstr "Näiteks:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "-D valikud on järgnevad (vaikeväärtus on sulgudes):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -768,7 +768,7 @@ msgstr "Par exemple:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" "Les options -D sont les suivantes (valeurs par défaut entre parenthèses):" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -829,7 +829,7 @@ msgstr "Például:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "A -D lehetőségek a következők (alapértelmezés zárójelben)" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -764,7 +764,7 @@ msgstr "Per esempio:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "Le opzioni -D sono come segue (default in parentesi)" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -763,7 +763,7 @@ msgstr "예:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -766,7 +766,7 @@ msgstr "Bijvoorbeeld:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "De -D opties zijn (standaard waarden tussen haakjes):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -817,7 +817,7 @@ msgstr "Na przykład:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -821,7 +821,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "As opções -D são as seguintes (pré-definição em parentesis):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -766,7 +766,7 @@ msgstr "Por exemplo:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "As opções -D são as seguintes (pré-definições entre parênteses):" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -763,7 +763,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -775,7 +775,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-06 11:54:23 UTC (rev 9985) @@ -820,7 +820,7 @@ msgstr "Örneğin:" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" "-D seçenekleri aşağıda listenenmiştir (parantez içindekiler varsayılan " "seçeneklerdir):" Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-06 11:54:23 UTC (rev 9985) @@ -760,7 +760,7 @@ msgstr "" #: org/openscience/jmol/app/Jmol.java:477 -msgid "The -D options are as follows (defaults in parathesis):" +msgid "The -D options are as follows (defaults in parenthesis):" msgstr "" #: org/openscience/jmol/app/Jmol.java:650 Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-06 11:24:32 UTC (rev 9984) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-06 11:54:23 UTC (rev 9985) @@ -474,7 +474,7 @@ .println("Jmol -ions myscript.spt -w JPEG:myfile.jpg > output.txt"); System.out.println(); System.out.println(GT - ._("The -D options are as follows (defaults in parathesis):")); + ._("The -D options are as follows (defaults in parenthesis):")); System.out.println(); System.out.println(" cdk.debugging=[true|false] (false)"); System.out.println(" cdk.debug.stdout=[true|false] (false)"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-10-06 12:02:40
|
Revision: 9986 http://jmol.svn.sourceforge.net/jmol/?rev=9986&view=rev Author: hansonr Date: 2008-10-06 12:02:28 +0000 (Mon, 06 Oct 2008) Log Message: ----------- "needs" -> "requires" Modified Paths: -------------- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ca.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -614,11 +614,11 @@ msgstr "Eixos d'orientació/rotació compatibles amb RasMol/Chime" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Visualització prèvia del fitxer (cal reiniciar el Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Botó de neteja de la consola (cal reiniciar el Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-cs.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -674,12 +674,12 @@ msgstr "RasMol/Chime kompatibilní orientace/rotace os" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Náhled souboru (vyžaduje restart Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 #, fuzzy -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Vyčisti tlačítko konzole (nutný restart Jmolu)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-da.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -657,11 +657,11 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-de.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -615,11 +615,11 @@ msgstr "RasMol/Chime-kompatible Achsen-Orientierung/Rotationen" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Datei-Vorschau (Neustart erforderlich)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Konsole leeren Button (benötigt Neustart von Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-en_GB.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -611,11 +611,11 @@ msgstr "RasMol/Chime compatible axes orientation/rotations" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "File Preview (requires restarting Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Clear console button (requires restarting Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-es.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -616,11 +616,11 @@ msgstr "Orientación de ejes y rotación compatibles con RasMol/Chime" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Previsualización de archivos (requiere reiniciar Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Botón para borrar consola (requiere reiniciar Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-et.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -669,11 +669,11 @@ msgstr "RasMol/Chime ühilduvate telgede suund/pöörded" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Faili eelvaade (vajab Jmol'i taaskäivitust)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Konsooli puhastuse nupp (vajab Jmol'i taaskäivitust)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-fr.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -615,11 +615,11 @@ msgstr "Orientation/Rotations des axes compatible RasMol/Chime" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Prévisualisation (redémarrage de Jmol nécessaire)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Bouton Effacer dans la console (redémarrage de Jmol nécessaire)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-hu.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -675,12 +675,12 @@ msgstr "RasMol/Chime kompatibilis tengelyigazítás és -forgatás" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Fájl előnézet (a program ujraindítását igényli)" #: org/openscience/jmol/app/GuiMap.java:183 #, fuzzy -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Datei-Vorschau (Neustart erforderlich)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-it.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -612,11 +612,11 @@ msgstr "Orientazioni/rotazioni degli assi compatibili con RasMol/Chime" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Anteprima del file (richiede riavvio di Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ko.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -611,11 +611,11 @@ msgstr "RasMol/Chime 호환 축 방향/회전" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "파일 미리보기 (Jmol 재시작 필요)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "콘솔 버튼 지우기 (Jmol 재시작 필요)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-nl.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -614,11 +614,11 @@ msgstr "RasMol/Chime-gelijkende assen-orientatie/" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Bestands Preview (vereist een herstart van Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Leeg console knop (vereist een herstart van Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pl.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -665,11 +665,11 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Podgląd pliki (nezbędny jest restart Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -670,12 +670,12 @@ msgstr "Eixos compatíveis RasMol/Chimeorientação/rotação" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Pré-visualização do ficheiro (requer reiniciação do Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 #, fuzzy -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Pré-visualização do ficheiro (requer reiniciação do Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-pt_BR.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -614,11 +614,11 @@ msgstr "Orientação/rotação de eixos compatível com RasMol/Chime" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Pré-visualização de arquivo (necessário reiniciar o Jmol)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Apagar o botão do console (necessário reiniciar o Jmol)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-ru.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -613,11 +613,11 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-sv.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -625,11 +625,11 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol-tr.po 2008-10-06 12:02:28 UTC (rev 9986) @@ -670,11 +670,11 @@ msgstr "RasMol/Chime'e uyumlu eksenlerin yönelme/dönüşleri" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "Dosya önizleme (Jmol'un yeniden başlatılması gerekir)" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "Komut arayüzünü temizle (Jmol'u yeniden başlatmanız gerekir)" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot =================================================================== --- trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/jmol/translation/Jmol/Jmol.pot 2008-10-06 12:02:28 UTC (rev 9986) @@ -610,11 +610,11 @@ msgstr "" #: org/openscience/jmol/app/GuiMap.java:182 -msgid "File Preview (needs restarting Jmol)" +msgid "File Preview (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:183 -msgid "Clear console button (needs restarting Jmol)" +msgid "Clear console button (requires restarting Jmol)" msgstr "" #: org/openscience/jmol/app/GuiMap.java:184 Modified: trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java 2008-10-06 11:54:23 UTC (rev 9985) +++ trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java 2008-10-06 12:02:28 UTC (rev 9986) @@ -179,8 +179,8 @@ labels.put("Prefs.showAxes", GT._("Axes")); labels.put("Prefs.showBoundingBox", GT._("Bounding Box")); labels.put("Prefs.axesOrientationRasmol", GT._("RasMol/Chime compatible axes orientation/rotations")); - labels.put("Prefs.openFilePreview", GT._("File Preview (needs restarting Jmol)")); - labels.put("Prefs.clearConsoleButton", GT._("Clear console button (needs restarting Jmol)")); + labels.put("Prefs.openFilePreview", GT._("File Preview (requires restarting Jmol)")); + labels.put("Prefs.clearConsoleButton", GT._("Clear console button (requires restarting Jmol)")); labels.put("Prefs.isLabelAtomColor", GT._("Use Atom Color")); labels.put("Prefs.isBondAtomColor", GT._("Use Atom Color")); labels.put("rotateScriptTip", GT._("Rotate molecule.")); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-10-12 02:09:31
|
Revision: 10069 http://jmol.svn.sourceforge.net/jmol/?rev=10069&view=rev Author: hansonr Date: 2008-10-12 02:09:21 +0000 (Sun, 12 Oct 2008) Log Message: ----------- version=11.7.3_dev # new feature: (Application) command line option -j --jmolscript "script commands" Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-11 23:24:24 UTC (rev 10068) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-12 02:09:21 UTC (rev 10069) @@ -3,6 +3,7 @@ version=11.7.3_dev +# new feature: (Application) command line option -j --jmolscript "script commands" # new feature: load "xxxx.prmtop" COORD ({bitset}) "mdcrd::md1.crd" # new feature: load MODELS ({bitset}) # new feature: load TRAJECTORY ({bitset}) Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-11 23:24:24 UTC (rev 10068) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-12 02:09:21 UTC (rev 10069) @@ -392,6 +392,7 @@ String modelFilename = null; String scriptFilename = null; + String script = null; Options options = new Options(); options.addOption("b", "backgroundtransparent", false, GT @@ -411,11 +412,17 @@ ._("exit after script (implicit with -n)")); OptionBuilder.withLongOpt("script"); - OptionBuilder.withDescription("script file to execute"); + OptionBuilder.withDescription(GT._("script file to execute")); OptionBuilder.withValueSeparator('='); OptionBuilder.hasArg(); options.addOption(OptionBuilder.create("s")); + OptionBuilder.withLongOpt("jmolscript"); + OptionBuilder.withDescription(GT._("Jmol script to execute")); + OptionBuilder.withValueSeparator('='); + OptionBuilder.hasArg(); + options.addOption(OptionBuilder.create("j")); + OptionBuilder.withLongOpt("menu"); OptionBuilder.withDescription("menu file to use"); OptionBuilder.withValueSeparator('='); @@ -546,6 +553,11 @@ commandOptions += "-s"; scriptFilename = line.getOptionValue("s"); } + + if (line.hasOption("j")) { + commandOptions += "-s"; + script = line.getOptionValue("j"); + } //menu file if (line.hasOption("m")) { @@ -644,12 +656,20 @@ } // OK, by now it is time to execute the script + // file first if (scriptFilename != null) { - report("Executing script: " + scriptFilename); + report("Executing script from file: " + scriptFilename); if (haveDisplay.booleanValue()) jmol.splash.showStatus(GT._("Executing script...")); jmol.viewer.evalFile(scriptFilename); } + // then command script + if (script != null) { + report("Executing script: " + script); + if (haveDisplay.booleanValue()) + jmol.splash.showStatus(GT._("Executing script...")); + jmol.viewer.script(script); + } } catch (Throwable t) { System.out.println("uncaught exception: " + t); t.printStackTrace(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-10-12 04:21:25
|
Revision: 10071 http://jmol.svn.sourceforge.net/jmol/?rev=10071&view=rev Author: hansonr Date: 2008-10-12 04:21:13 +0000 (Sun, 12 Oct 2008) Log Message: ----------- version=11.7.3_dev # new feature: (Application) Tools...Gaussian... Build Gaussian Input File Dialog Modified Paths: -------------- trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/Properties/Jmol-resources.properties trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Added Paths: ----------- trunk/Jmol/src/org/openscience/jmol/app/GaussianDialog.java Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-12 02:12:17 UTC (rev 10070) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-12 04:21:13 UTC (rev 10071) @@ -3,6 +3,7 @@ version=11.7.3_dev +# new feature: (Application) Tools...Gaussian... Build Gaussian Input File Dialog # new feature: (Application) command line option -j --jmolscript "script commands" # new feature: load MODELS ({bitset})|{first,last,stride} # new feature: load TRAJECTORY ({bitset})|{first,last,stride} Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-10-12 02:12:17 UTC (rev 10070) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-10-12 04:21:13 UTC (rev 10071) @@ -6099,6 +6099,8 @@ exp = "\"line1\nline2\nline3\n\"+(\"\"+{selected}.size)%-3+(\"\"+{selected}.bonds.size)%-3+\" 0 0 0\n\"" + "+{selected}.labels(\"%10.4x%10.4y%10.4z %-2e 0 0 0 0 0\").lines" + "+{selected}.bonds.labels(\"%3D1%3D2%3ORDER 0 0 0\").lines"; + else if (type.startsWith("USER:")) + exp = "{selected}.label(\"" + type.substring(5) + "\").lines"; else //if(type.equals("XYZ")) exp = "\"\" + {selected}.size + \"\n\n\"+{selected}.label(\"%-2e %10.5x %10.5y %10.5z\").lines"; Modified: trunk/Jmol/src/org/openscience/jmol/Properties/Jmol-resources.properties =================================================================== --- trunk/Jmol/src/org/openscience/jmol/Properties/Jmol-resources.properties 2008-10-12 02:12:17 UTC (rev 10070) +++ trunk/Jmol/src/org/openscience/jmol/Properties/Jmol-resources.properties 2008-10-12 04:21:13 UTC (rev 10071) @@ -38,7 +38,7 @@ openImage=openButton.png openurlImage=openUrlButton.png exportMenuImage=saveButton.png -exportMenu=export toweb povray write +exportMenu=export toweb povray write gauss exportImage=imageButton.png povrayImage=povrayButton.png recentFilesImage=recentFilesButton.png Added: trunk/Jmol/src/org/openscience/jmol/app/GaussianDialog.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/GaussianDialog.java (rev 0) +++ trunk/Jmol/src/org/openscience/jmol/app/GaussianDialog.java 2008-10-12 04:21:13 UTC (rev 10071) @@ -0,0 +1,517 @@ +/* $RCSfile$ + * $Author: turnera $ + * $Date: 2007-05-08 22:52:24 +0100 (Tue, 08 May 2007) $ + * $Revision: 7642 $ + * + * Copyright (C) 2002-2005 The Jmol Development Team + * + * Contact: jmo...@li... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + */ +package org.openscience.jmol.app; + +import org.jmol.api.*; +import org.jmol.i18n.GT; +import org.jmol.viewer.Viewer; + +import java.io.File; +import java.io.Writer; +import java.io.FileWriter; +import java.io.BufferedWriter; +import java.io.IOException; + +import java.awt.GridLayout; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JDialog; +import javax.swing.JTabbedPane; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JFrame; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import javax.swing.border.TitledBorder; +import javax.swing.BorderFactory; +import javax.swing.JTextField; +import javax.swing.JTextArea; +import javax.swing.JSpinner; +import javax.swing.SpinnerModel; +import javax.swing.SpinnerNumberModel; +import javax.swing.JComboBox; +import javax.swing.JFileChooser; +import javax.swing.JScrollPane; + +public class GaussianDialog extends JDialog implements ActionListener, + ChangeListener { + + /* + * By Andy Turner, at...@so... + * modified and integrated into Jmol by Bob Hanson, ha...@st..., 10/12/2008 + */ + + JmolViewer viewer; + + private JPanel container; + private JTextField checkField, optsField, fileField, selectField; + private JComboBox memBox, methBox, basisBox, dfBox; + private JSpinner procSpinner, chargeSpinner, multSpinner; + private JButton fileButton, saveButton, cancelButton; + private JFileChooser fileChooser; + private JTextArea editArea; + private JTabbedPane inputTabs; + private String check, mem, proc, file, meth, route, charge, mult, select; + + private static final String DEFAULT_METHOD = "HF"; + private static final String DEFAULT_BASIS = "3-21G**"; + private static final String DEFAULT_CHARGE = "0"; + private static final String DEFAULT_MULT = "1"; + + private static final String[] BASIS_LIST = {"Gen", + "3-21G", + "3-21G*", + "3-21G**", + "6-21G", + "4-31G", + "6-31G", + "6-311G", + "D95V", + "D95", + "SHC", + "CEP-4G", + "CEP-31G", + "CEP-121G", + "LanL2MB", + "LanL2DZ", + "SDD", + "SDDAll", + "cc-pVDZ", + "cc-pVTZ", + "cc-pVQZ", + "cc-pV5Z", + "cc-pV6Z", + "aug-cc-pVDZ", + "aug-cc-pVTZ", + "aug-cc-pVQZ", + "aug-cc-pV5Z", + "aug-cc-pV6Z", + "SV", + "SVP", + "TZV", + "TZVP", + "MidiX", + "EPR-II", + "EPR-III", + "UGBS", + "UGBS1P", + "UGBS2P", + "UGBS3P", + "MTSmall", + "DGDZVP", + "DGDZVP2", + "DGTZVP"}; + private static final String[] METHOD_LIST = {"HF", + "MP2", + "MP3", + "MP4", + "CCSD(T)", + "CIS", + "CISD", + "LSDA", + "BLYP", + "BP86", + "BPW91", + "OLYP", + "OP86", + "OPW91", + "PBEPBE", + "VSXC", + "HCTH93", + "HCTH147", + "HCTH407", + "TPSSTPSS", + "B3LYP", + "B3PW91", + "AM1", + "PM3", + "CNDO", + "INDO", + "MNDO", + "MINDO3", + "ZINDO", + "UFF", + "AMBER", + "DREIDING", + "Huckel"}; + private static final String[] DF_LIST = {"None", + "Auto", + "DGA1", + "DGA2"}; + private static final String[] MEMORY_LIST = {"Default", + "100MB", + "500MB", + "1GB", + "2GB", + "4GB", + "7GB", + "15GB"}; + + private static final String NOBASIS_LIST = + "AM1 PM3 CNDO INDO MNDO MINDO3 ZINDO UFF AMBER DREIDING Huckel"; + private static final String DFT_LIST = + "LSDA BLYP BP86 BPW91 OLYP OP86 OPW91 PBEPBE VSXC HCTH93 NCTH147 HCTH407 TPSSTPSS B3LYP B3PW91"; + + + public GaussianDialog(JFrame f, JmolViewer viewer) { + + super(f, false); + this.viewer = viewer; + + setTitle(GT._("Export Gaussian Input File")); + + container = new JPanel(); + container.setLayout(new BorderLayout()); + inputTabs = new JTabbedPane(); + + JPanel basicPanel = buildBasicPanel(); + inputTabs.addTab(GT._("Basic"), null, basicPanel); + JPanel advancedPanel = buildAdvancedPanel(); + inputTabs.addTab(GT._("Advanced"), null, advancedPanel); + + inputTabs.addChangeListener(this); + + JPanel filePanel = buildFilePanel(); + JPanel buttonPanel = buildButtonPanel(); + + container.add(inputTabs, BorderLayout.NORTH); + container.add(filePanel, BorderLayout.CENTER); + container.add(buttonPanel, BorderLayout.SOUTH); + getContentPane().add(container); + + pack(); + centerDialog(); + updateUI(); + } + + private JPanel buildBasicPanel() { + + JPanel showPanel = new JPanel(new BorderLayout()); + + JPanel linkPanel = new JPanel(new BorderLayout()); + TitledBorder linkTitle = BorderFactory.createTitledBorder("link0 Section"); + linkPanel.setBorder(linkTitle); + + JPanel linkLabels = new JPanel(new GridLayout(3,1)); + JPanel linkControls = new JPanel(new GridLayout(3,1)); + + JLabel checkLabel = new JLabel(GT._("Checkpoint File: ")); + linkLabels.add(checkLabel); + checkField = new JTextField(20); + linkControls.add(checkField); + + JLabel memLabel = new JLabel(GT._("Amount of Memory:")); + linkLabels.add(memLabel); + memBox = new JComboBox(MEMORY_LIST); + linkControls.add(memBox); + memBox.setSelectedIndex(0); + + JLabel procLabel = new JLabel(GT._("Number of Processors:")); + linkLabels.add(procLabel); + SpinnerModel procModel = new SpinnerNumberModel(1, 1, 16, 1); + procSpinner = new JSpinner(procModel); + procSpinner.setEditor(new JSpinner.NumberEditor(procSpinner, "#")); + linkControls.add(procSpinner); + + linkPanel.add(linkLabels, BorderLayout.LINE_START); + linkPanel.add(linkControls, BorderLayout.CENTER); + + showPanel.add(linkPanel, BorderLayout.NORTH); + + JPanel routePanel = new JPanel(new BorderLayout()); + TitledBorder routeTitle = BorderFactory.createTitledBorder(GT._("Route")); + routePanel.setBorder(routeTitle); + + JPanel routeLabels = new JPanel(new GridLayout(4,1)); + JPanel routeControls = new JPanel(new GridLayout(4,1)); + + JLabel methLabel = new JLabel(GT._("Method: ")); + routeLabels.add(methLabel); + methBox = new JComboBox(METHOD_LIST); + routeControls.add(methBox); + methBox.setSelectedIndex(0); + methBox.addActionListener(this); + + JLabel basisLabel = new JLabel(GT._("Basis Set: ")); + routeLabels.add(basisLabel); + basisBox = new JComboBox(BASIS_LIST); + routeControls.add(basisBox); + basisBox.setSelectedIndex(3); + + + JLabel dfLabel = + new JLabel(GT._("Density Fitting Basis Set (DFT Only): ")); + routeLabels.add(dfLabel); + dfBox = new JComboBox(DF_LIST); + routeControls.add(dfBox); + dfBox.setSelectedIndex(0); + + JLabel optsLabel = new JLabel(GT._("Job Options: ")); + routeLabels.add(optsLabel); + optsField = new JTextField(20); + routeControls.add(optsField); + optsField.setText("opt"); + + routePanel.add(routeLabels, BorderLayout.LINE_START); + routePanel.add(routeControls, BorderLayout.CENTER); + + showPanel.add(routePanel, BorderLayout.CENTER); + + JPanel molPanel = new JPanel(new BorderLayout()); + TitledBorder molTitle = + BorderFactory.createTitledBorder(GT._("Molecular Properties")); + molPanel.setBorder(molTitle); + + JPanel molLabels = new JPanel(new GridLayout(3,1)); + JPanel molControls = new JPanel(new GridLayout(3,1)); + + JLabel chargeLabel = new JLabel(GT._("Total Charge: ")); + molLabels.add(chargeLabel); + SpinnerModel chargeModel = new SpinnerNumberModel(0, -10, 10, 1); + chargeSpinner = new JSpinner(chargeModel); + chargeSpinner.setEditor(new JSpinner.NumberEditor(chargeSpinner, "#")); + molControls.add(chargeSpinner); + + JLabel multLabel = new JLabel(GT._("Multiplicity: ")); + molLabels.add(multLabel); + SpinnerModel multModel = new SpinnerNumberModel(1, 0, 10, 1); + multSpinner = new JSpinner(multModel); + multSpinner.setEditor(new JSpinner.NumberEditor(multSpinner, "#")); + molControls.add(multSpinner); + + JLabel selectLabel = new JLabel(GT._("Selection: ")); + molLabels.add(selectLabel); + selectField = new JTextField(20); + selectField.setText("visible"); + molControls.add(selectField); + + molPanel.add(molLabels, BorderLayout.LINE_START); + molPanel.add(molControls, BorderLayout.CENTER); + + showPanel.add(molPanel, BorderLayout.SOUTH); + + return showPanel; + } + + private JPanel buildAdvancedPanel() { + + JPanel editPanel = new JPanel(new BorderLayout()); + TitledBorder editTitle = + BorderFactory.createTitledBorder("Edit Gaussian Input File"); + editPanel.setBorder(editTitle); + + editArea = new JTextArea(); + JScrollPane editPane = new JScrollPane(editArea); + editPane.setPreferredSize(new Dimension(150,100)); + + editPanel.add(editPane, BorderLayout.CENTER); + + return editPanel; + + } + + private JPanel buildFilePanel() { + + JPanel showPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + TitledBorder fileTitle = + BorderFactory.createTitledBorder(GT._("Gaussian Input File Name")); + showPanel.setBorder(fileTitle); + + fileField = new JTextField(30); + showPanel.add(fileField); + fileField.setText(new File("my_input.com").getAbsolutePath()); + fileButton = new JButton(GT._("File...")); + fileButton.addActionListener(this); + showPanel.add(fileButton); + + return showPanel; + } + + private JPanel buildButtonPanel() { + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new FlowLayout(FlowLayout.RIGHT)); + + saveButton = new JButton(GT._("Save")); + saveButton.addActionListener(this); + buttonPanel.add(saveButton); + + cancelButton = new JButton(GT._("Cancel")); + cancelButton.addActionListener(this); + buttonPanel.add(cancelButton); + + getRootPane().setDefaultButton(saveButton); + return buttonPanel; + } + + protected void centerDialog() { + + Dimension screenSize = this.getToolkit().getScreenSize(); + Dimension size = this.getSize(); + screenSize.height = screenSize.height / 2; + screenSize.width = screenSize.width / 2; + size.height = size.height / 2; + size.width = size.width / 2; + int y = screenSize.height - size.height; + int x = screenSize.width - size.width; + this.setLocation(x, y); + } + + private void updateVars() { + check = checkField.getText(); + mem = memBox.getSelectedItem().toString(); + proc = procSpinner.getValue().toString(); + select = selectField.getText(); + if (select.length() == 0) { + select = "visible"; + selectField.setText(select); + } + + charge = chargeSpinner.getValue().toString(); + if (charge.equals("")) charge = DEFAULT_CHARGE; + mult = multSpinner.getValue().toString(); + if (mult.equals("")) mult = DEFAULT_MULT; + + String basis = basisBox.getSelectedItem().toString(); + if (basis.equals("")) basis = DEFAULT_BASIS; + meth = methBox.getSelectedItem().toString(); + if (meth.equals("")) meth = DEFAULT_METHOD; + if (NOBASIS_LIST.lastIndexOf(meth, NOBASIS_LIST.length()) >= 0) basis = ""; + if (!basis.equals("")) basis = "/" + basis; + String df = dfBox.getSelectedItem().toString(); + if (DFT_LIST.lastIndexOf(meth, DFT_LIST.length()) < 0) df = "None"; + if (df.equals("None")) { + df = ""; + } else { + df = "/" + df; + } + + file = fileField.getText(); + if (file.equals("")) file = "my_input.com"; + + String opts = optsField.getText(); + route = "# " + meth + basis + df + " " + opts; + + } + + private void updateUI() { + updateVars(); + if (NOBASIS_LIST.lastIndexOf(meth, NOBASIS_LIST.length()) >= 0) { + basisBox.setEnabled(false); + } else { + basisBox.setEnabled(true); + } + if (DFT_LIST.lastIndexOf(meth, DFT_LIST.length()) >= 0) { + dfBox.setEnabled(true); + } else { + dfBox.setEnabled(false); + } + return; + } + + private void save() { + + if (inputTabs.getSelectedIndex() == 0) + getCommand(); + Writer output = null; + try { + File outputFile = new File(fileField.getText()); + fileField.setText(outputFile.getAbsolutePath()); + output = new BufferedWriter(new FileWriter(outputFile)); + output.write(editArea.getText()); + output.close(); + } catch (IOException err) { + return; + } + dispose(); + } + + private void cancel() { + dispose(); + } + + private void setFile() { + fileChooser = new JFileChooser(); + String fname = fileField.getText(); + fileChooser.setSelectedFile(new File(fname)); + int ierr = fileChooser.showDialog(this, "Set"); + if (ierr == JFileChooser.APPROVE_OPTION) { + File file = fileChooser.getSelectedFile(); + fileField.setText(file.getAbsolutePath()); + } + } + + private void tabSwitched() { + if (inputTabs.getSelectedIndex() == 1) { + getCommand(); + } + } + + protected void getCommand() { + updateVars(); + String c = check; + if (! c.equals("")) c = "%chk=" + c + "\n"; + String m = mem; + if (! m.equals("Default")) { + m = "%mem=" + m + "\n"; + } else { + m = ""; + } + String p = proc; + if (! p.equals("1")) { + p = "%nproc=" + p + "\n"; + } else { + p = ""; + } + + String data = viewer.getData(select,"USER:%-2e %10.5x %10.5y %10.5z"); + + editArea.setText(c + m + p + route + "\n\n" + + "Title: Created by Jmol version " + Viewer.getJmolVersion() + "\n\n" + charge + " " + mult + + "\n" + data + "\n"); + } + + public void actionPerformed(ActionEvent event) { + if (event.getSource() == saveButton) { + save(); + } else if (event.getSource() == cancelButton) { + cancel(); + } else if (event.getSource() == fileButton) { + setFile(); + } else if (event.getSource() == methBox) { + updateUI(); + } + } + + public void stateChanged(ChangeEvent event) { + if (event.getSource() == inputTabs) { + tabSwitched(); + } + } + +} \ No newline at end of file Modified: trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java 2008-10-12 02:12:17 UTC (rev 10070) +++ trunk/Jmol/src/org/openscience/jmol/app/GuiMap.java 2008-10-12 04:21:13 UTC (rev 10071) @@ -140,6 +140,7 @@ labels.put("transform", GT._("Tr&ansform...")); labels.put("definecenter", GT._("Define &Center")); labels.put("tools", GT._("&Tools")); + labels.put("gauss", GT._("&Gaussian...")); labels.put("viewMeasurementTable", GT._("&Measurements")+"..."); labels.put("viewMeasurementTableTip", GT._("Click atoms to measure distances")); labels.put("distanceUnitsMenu", GT._("Distance &Units")); Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-12 02:12:17 UTC (rev 10070) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-12 04:21:13 UTC (rev 10071) @@ -70,6 +70,7 @@ DisplayPanel display; StatusBar status; + protected GaussianDialog gaussianDialog; private PreferencesDialog preferencesDialog; MeasurementTable measurementTable; RecentFilesDialog recentFiles; @@ -1196,6 +1197,7 @@ private static final String copyImageActionProperty = "copyImage"; private static final String copyScriptActionProperty = "copyScript"; private static final String pasteClipboardActionProperty = "pasteClipboard"; + private static final String gaussianAction = "gauss"; // --- action implementations ----------------------------------- @@ -1222,7 +1224,8 @@ pasteClipboardAction, new AboutAction(), new WhatsNewAction(), new UguideAction(), new ConsoleAction(), new RecentFilesAction(), povrayAction, writeAction, toWebAction, new ScriptWindowAction(), - new AtomSetChooserAction(), viewMeasurementTableAction }; + new AtomSetChooserAction(), viewMeasurementTableAction, new GaussianAction() } + ; class CloseAction extends AbstractAction { CloseAction() { @@ -1273,6 +1276,18 @@ } } + class GaussianAction extends AbstractAction { + public GaussianAction() { + super(gaussianAction); + } + + public void actionPerformed(ActionEvent e) { + if (gaussianDialog == null) + gaussianDialog = new GaussianDialog(frame, viewer); + gaussianDialog.show(); + } + } + class NewwinAction extends AbstractAction { NewwinAction() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2008-10-13 14:34:04
|
Revision: 10082 http://jmol.svn.sourceforge.net/jmol/?rev=10082&view=rev Author: hansonr Date: 2008-10-13 14:33:40 +0000 (Mon, 13 Oct 2008) Log Message: ----------- version=11.7.4_dev application -c/-C; load keyword "..." # new feature: (Application) -c option checks without loading files; -C option checks with loading files # code: LOAD command ignores all nonrecognized pre-filename keywords Modified Paths: -------------- trunk/Jmol/src/org/jmol/adapter/smarter/AtomSetCollectionReader.java trunk/Jmol/src/org/jmol/viewer/Compiler.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: trunk/Jmol/src/org/jmol/adapter/smarter/AtomSetCollectionReader.java =================================================================== --- trunk/Jmol/src/org/jmol/adapter/smarter/AtomSetCollectionReader.java 2008-10-13 05:47:29 UTC (rev 10081) +++ trunk/Jmol/src/org/jmol/adapter/smarter/AtomSetCollectionReader.java 2008-10-13 14:33:40 UTC (rev 10082) @@ -290,7 +290,8 @@ ptFile = (htParams.containsKey("ptFile") ? ((Integer) htParams .get("ptFile")).intValue() : -1); if (ptFile > 0 && htParams.containsKey("firstLastSteps")) { - Object val = ((Vector) htParams.get("firstLastSteps")) .elementAt(ptFile - 1); + Object val = ((Vector) htParams.get("firstLastSteps")) + .elementAt(ptFile - 1); if (val instanceof BitSet) { bsModels = (BitSet) val; } else { Modified: trunk/Jmol/src/org/jmol/viewer/Compiler.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Compiler.java 2008-10-13 05:47:29 UTC (rev 10081) +++ trunk/Jmol/src/org/jmol/viewer/Compiler.java 2008-10-13 14:33:40 UTC (rev 10082) @@ -473,7 +473,7 @@ continue; } if (tokCommand == Token.load) { - if (lookingAtLoadFormat()) { + if (nTokens == 1 && lookingAtLoadFormat()) { String strFormat = script.substring(ichToken, ichToken + cchToken); strFormat = strFormat.toLowerCase(); if (Parser @@ -1173,22 +1173,21 @@ return -1; } - static String[] loadFormats = { "append", "files", "trajectory", "menu", "models", - /*ancient:*/ "alchemy", "mol2", "mopac", "nmrpdb", "charmm", "xyz", "mdl", "pdb" }; + // static String[] loadFormats = { "append", "files", "trajectory", "menu", "models", + // /*ancient:*/ "alchemy", "mol2", "mopac", "nmrpdb", "charmm", "xyz", "mdl", "pdb" }; private boolean lookingAtLoadFormat() { - int ichT; - String match = script - .substring(ichToken, Math.min(cchScript, ichToken + 10)).toLowerCase(); - for (int i = loadFormats.length; --i >= 0;) { - String strFormat = loadFormats[i]; - int cchFormat = strFormat.length(); - if (match.indexOf(strFormat) == 0 && (ichT = ichToken + cchFormat) < cchScript && isSpaceOrTab(script.charAt(ichT))) { - cchToken = cchFormat; - return true; - } - } - return false; + // just allow a simple word or =xxxx + int ichT = ichToken; + char ch = '\0'; + while (ichT < cchScript + && ((ch = script.charAt(ichT)) == '=' && ichT == ichToken + || Character.isLetterOrDigit(ch))) + ++ichT; + if (ichT == ichToken || !eol(ch) && !isSpaceOrTab(ch)) + return false; + cchToken = ichT - ichToken; + return true; } private boolean lookingAtSpecialString() { Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-13 05:47:29 UTC (rev 10081) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2008-10-13 14:33:40 UTC (rev 10082) @@ -3,6 +3,9 @@ version=11.7.4_dev +# new feature: (Application) -c option checks without loading files; -C option checks with loading files +# code: LOAD command ignores all nonrecognized pre-filename keywords + # ----------------------------------------------------------------------------- #version=11.7.3 Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-10-13 05:47:29 UTC (rev 10081) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2008-10-13 14:33:40 UTC (rev 10082) @@ -298,9 +298,8 @@ isSilent = (str.indexOf("-i") >= 0); if (isSilent) Logger.setLogLevel(Logger.LEVEL_WARN); //no info, but warnings and errors - checkScriptOnly = (str.indexOf("-c") >= 0); - if (checkScriptOnly) - fileOpenCheck = true; + checkScriptOnly = (str.toLowerCase().indexOf("-c") >= 0); + fileOpenCheck = (checkScriptOnly && str.indexOf("-C") >= 0); listCommands = (str.indexOf("-l") >= 0); autoExit = (str.indexOf("-x") >= 0); haveDisplay = (display != null && str.indexOf("-n") < 0); Modified: trunk/Jmol/src/org/openscience/jmol/app/Jmol.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-13 05:47:29 UTC (rev 10081) +++ trunk/Jmol/src/org/openscience/jmol/app/Jmol.java 2008-10-13 14:33:40 UTC (rev 10082) @@ -401,7 +401,8 @@ options.addOption("h", "help", false, GT._("give this help page")); options.addOption("n", "nodisplay", false, GT ._("no display (and also exit when done)")); - options.addOption("c", "check", false, GT._("check script syntax only")); + options.addOption("c", "check", false, GT._("check script syntax only - no file loading")); + options.addOption("C", "checkload", false, GT._("check script syntax only - with file loading")); options.addOption("i", "silent", false, GT._("silent startup operation")); options.addOption("l", "list", false, GT ._("list commands during script execution")); @@ -544,9 +545,11 @@ haveDisplay = Boolean.FALSE; } - //check script only + //check script only -- don't open files if (line.hasOption("c")) { commandOptions += "-c"; + } else if (line.hasOption("C")) { + commandOptions += "-C"; } //run script This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |